我distinct在我的中使用query,但它仍然给我重复的输入id。我究竟做错了什么?这是我的代码:
SELECT distinct(sd_did),sd_uid,sd_time
FROM shared_deals
WHERE sd_uid = '".$uid."'
ORDER BY sd_time DESC";
Distinct here 可能仅适用于一个字段,如果您还获取其他值,则可以尝试
SELECT sd_did,sd_uid,sd_time
FROM shared_deals
WHERE sd_uid = '".$uid."'
GROUP BY sd_did
ORDER BY sd_time DESC
如果您希望 (sd_did,sd_uid,sd_time) 的组合不同,请使用以下代码:
选择 sd_did
,sd_uid
,sd_time
FROM shared_deals
WHERE sd_uid = '".$uid."'
按 sd_did、sd_uid、sd_time 分组
按 sd_time DESC 排序;
我认为distinct适用于所有选定的列,这意味着如果在你的结果中你有sd_did=1,sd_uid=1并且sd_did=1,sd_uid=2distinct 不会像你期望的那样工作,因为这两行是不同的