我正在使用以下查询连接两个表并从中检索值。它按降序显示值。
Leads
63697 Ben
63698 Ben
63699 Ben
63700 Ben
63701 Ben
log
2 63697 Ben 10% Qualifying
3 63697 Ben 20% Qualifying
4 63697 Ben 30% Qualifying
6 63698 Ben 30% Qualifying
8 63698 Ben 80% Quoted
10 63698 Ben 70% Quoted
我要展示,
63697 Ben 30% Qualifying
63698 Ben 70% Quoted
63699 Ben
63700 Ben
63701 Ben
问题是当我使用查询时,
SELECT leads.id,leads.name, log.prob, log.current_stage FROM leads LEFT JOIN log ON log.leadid = leads.id WHERE leads.name = '$name' ORDER BY log.id DESC
它按降序显示日志表的所有详细信息。但是当我尝试将它们分组时,
SELECT leads.id,leads.name, log.prob, log.current_stage FROM leads LEFT JOIN log ON log.leadid = leads.id WHERE leads.name = '$name' GROUP BY log.leadid ORDER BY log.id DESC
它从日志表中按升序获取值
63697 Ben 10% Qualifying
63698 Ben 30% Qualifying
63699 Ben
63700 Ben
63701 Ben
谁能告诉我我做错了什么?
最佳答案
SELECT * FROM (
SELECT leads.id,leads.name, log.prob, log.current_stage, log.id AS logid FROM leads LEFT JOIN log ON log.leadid = leads.id WHERE leads.name = '$name' GROUP BY log.leadid
) ORDER BY logid DESC
经常看到这种情况,只需将其包装在 super 查询中,如图所示。
关于php - SQL : Can’t grab values in descending order when using group by,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8575542/