Заявка към БД

cold_zero

Registered
Мъча се да направя една заявка към базата данни ама нещо неуспявам...

Код:
$query = " SELECT DISTINCT goodid FROM sp_goods order by id desc limit 8";
$result  = mysql_query($query) or die('Error, query failed');
while($row  = mysql_fetch_array($result))
{
$gid = $row[goodid];
}

С този код ми изкарва уникалните цифри за goodid, искам с тази заявка да вадя и полето id...Пробвах нещо от този род:

Код:
$query = " SELECT DISTINCT goodid,id FROM sp_goods order by id desc limit 8";
$result  = mysql_query($query) or die('Error, query failed');
while($row  = mysql_fetch_array($result))
{
$gid = $row[goodid];
}

Идважда си id-то, но не вади уникалните goodid, всички записи :(
 
Код:
$query = mysql_query("SELECT * FROM `sp_goods` ORDER BY `id` DESC LIMIT 8") or die(mysql_error());
while($row  = mysql_fetch_array($query))
{
$gid = $row['goodid'];
echo $gid;
}
 
Не ме разбра :) Това което ми даваш си е обикновенна заявка. Ще дам пример...

Имам 4 записа в базата данни с различни id-та и с дне еднакви goodid:
id|goodid
1|5
2|4
3|7
4|7


Искам при изпълнение на заявката да ми изкарва уникалните goodid и да ми показва тяхното id, тоест в случая да ми изкара
id|goodid
1|5
2|4
3|7

примерно.
 
$query = mysql_query("SELECT `id`,`goodid` FROM `sp_goods` GROUP BY `goodid` ORDER BY `id` LIMIT 8")or die(mysql_error());
while ($row = mysql_fetch_array($query)) {
echo $row['id']."|".$row['goodid']."<br />";
}
:idea:
 
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP BY `goodid`' at line 1
 
Код:
<?
$query = mysql_query("SELECT `id`,`goodid` FROM `sp_goods` ORDER BY `id` LIMIT 8 GROUP BY `goodid`")or die(mysql_error());
while ($row = mysql_fetch_array($query)) {
echo "$row[id] | $row[goodid]<br />";
}
?>


Така няма да има грешка, но реално то ще изведе ид и годид, но няма да изведе само уникалните а всички ..
 
Пак си ми дава грешка:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'GROUP BY `goodid`' at line 1

И както казах не искам да ми вади всички записи! Искам да ми изважда записи в които не се дублира goodid
 
Моя беше грешката ,просто добави GROUP BY `goodid` преди ORDER ; )
П.П. Едитнах си предния пост ;>
 

Back
Горе