SELECT DISTINCT und id des Datensatzes ausgeben?

Thomas_Jung

Erfahrenes Mitglied
Hallo

Ist es möglich mit dieser Abfrage die id* des Datensatzes anzuzeigen?
* (Feld id int(11) auto_increment PRI)

PHP:
$sql="SELECT DISTINCT Karton FROM ".$mysql_table." WHERE (Firma = '312' and Karton > '0') ORDER BY Karton ASC";
$res = mysql_query($sql)or error($sql);
if ($res) {
$num = mysql_num_rows($res);
while($row = mysql_fetch_assoc($res)){

echo $row['id'];:mad:

echo $row['Karton']; :)

Gruß Thomas
 
Du liest ja nur 'Karton' aus, wie willst du da auch die ID ausgeben?

PHP:
$sql="SELECT DISTINCT `Karton`, `id` FROM ".$mysql_table." WHERE (`Firma` = '312' and `Karton` > '0') ORDER BY `Karton` ASC";
$res = mysql_query($sql)or error($sql);
if ($res) {
$num = mysql_num_rows($res);
while($row = mysql_fetch_assoc($res)){
 
Hallo Felix Jacobi

Bei dieser Abfrage
PHP:
$sql="SELECT DISTINCT `Karton`, `id` FROM

zeigt er mir die Doppelten Kartonnummer an das möchte ich ja durch DISTINCT vermeiden.

Gruß Thomas
 
Soweit ich distinct verstehe ist es dafür nicht gemacht. Dann solltest du GROUP BY verwenden. Distinct ist eine sehr schnelle möglichkeit die verschiedenen werte zu finden die vorhanden sind.
 
Hallo !

PHP:
$sql="SELECT id,Karton FROM ".$mysql_table." WHERE (Firma = '312' and Karton > '0') GROUP BY Karton ORDER BY Karton ASC";
$res = mysql_query($sql)or error($sql);
if ($res) {
$num = mysql_num_rows($res);
while($row = mysql_fetch_assoc($res)){


... sollte das gewünschte Ergebnis liefern!
 
Zurück