我在distinct
中使用了query
,但它仍然在id
中提供了重复的条目。我究竟做错了什么?这是我的代码:
SELECT distinct(sd_did),sd_uid,sd_time
FROM shared_deals
WHERE sd_uid = '".$uid."'
ORDER BY sd_time DESC";
答案 0 :(得分:5)
此处的区别可能仅适用于一个字段,如果您还有其他值,则可以尝试
SELECT sd_did,sd_uid,sd_time
FROM shared_deals
WHERE sd_uid = '".$uid."'
GROUP BY sd_did
ORDER BY sd_time DESC
答案 1 :(得分:1)
我认为distinct
适用于所有选定的列,这意味着如果您的结果中有sd_did=1,sd_uid=1
和sd_did=1,sd_uid=2
,则distinct将无法正常工作,因为这两行不同
答案 2 :(得分:1)
如果您希望(sd_did,sd_uid,sd_time)的组合不同,请使用以下代码:
SELECT sd_did ,sd_uid ,sd_time FROM shared_deals WHERE sd_uid = '".$uid."' GROUP BY sd_did,sd_uid,sd_time ORDER BY sd_time DESC;