[MySql] Spezielle Abfrage von nicht vorhandenen Elementen

mychastic

Mitglied
Hallo,

ich möchte eine Datenbankabfrage machen, mit der ich alle Firmen(CIDs) bekomme, die einen Artikel liefern können, aber noch nicht eingetragen sind (Um einen Artikel eine nicht vorhandene CID zuweisen zu können (per Select feld).

Die bereits vorhanden CIDs kann ich per Array an die MySql Funktion zuweisen und dann dachte ich an so etwas:

Code:
SELECT DISTINCT cid FROM `article_has_company` WHERE cid != 12 AND cid !=13
falls die CIDs 12 und 13 schon vorhanden sind. So bekomme ich alle CIDs außer eben 12 und 13. Doch wie löse ich das ganze, wenn die vorhanden CIDs im Array übergeben werden?
Ich weiß da ja nicht genau, wieviele CIDs schon vorhanden sind etc.

Habt ihr eventuell eine Lösung?
 
1. Gib mal bitte deine Tabellenstruktur an
2. Wie im Array? Per PHP wird ein Array an die MYSQL Abfrage gegeben oder wie? Dann könnte man es glaube ich mit WHERE cid IN $array versuchen.
 
Tabllenstruktur sieht wie folgt aus (Relationstabelle daher kein Primärschlüssel):

aid
cid
price

Also ob ich es im Array übergebe weiß ich noch nicht genau, ist mir spontan eingefallen es so zu versuchen(wenn dann wird es per PHP an MySql übergeben). Geht es eventuell auch anders?
 
Hi,

die CIDs kommen aus dieser Abfrage:
PHP:
		public function getCid($aidfilter='>0'){
		$result = mysql_query("SELECT article_has_company.aid, article_has_company.price,article_has_company.cid FROM article_has_company WHERE article_has_company.aid=$aidfilter");	
		if (mysql_num_rows($result) == 0) return array();		
		$articlecid = array();
		while ($row = mysql_fetch_array($result)){
		array_push($articlecid, array('aid' => $row['aid'],'cid' => $row['cid'],'price'=>$row['price'] ));		
		}	//while fetch_array		
		return $articlecid;

Im Endeffekt soll es so sein, dass ich ein Select Feld mit allen vorhandenen CIDs eines Artikels habe, bei denen ich welche entfernen kann und daneben ein Select Feld mit den noch nicht vorhanden, um sie einen Artikel hinzuzufügen.

mfg
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück