sql1获取名称,sql2获取印象,我需要按印象对名称进行排序 [英] sql1 to get names and sql2 to get Impressions, I need to sort names by Impressions
本文介绍了sql1获取名称,sql2获取印象,我需要按印象对名称进行排序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
你好,我有这个项目,我需要帮助我
Hello I have this Project and I need to help me
$sql1 = "SELECT COUNT(*) as num FROM table1 where column1='1'";
$total_Results = mysql_fetch_array(mysql_query($sql1));
$total_Results = $total_Results[num];
while($row = mysql_fetch_array($sql1))
{
$sql2="select distinct column1 from table2 where column2='".$row['id']."' and left(date,10) BETWEEN '".$datefrom."' AND '".$dateto."'";
$res=mysql_query($sql2);
}
sql1获取名称,sql2获取印象,我需要按印象对名称进行排序
sql1 to get names and sql2 to get Impressions, I need to sort names by Impressions
名称|展示次数DESC
name | Impressions DESC
A | 10
B | 8
C | 7
或
名称|展示次数ASC
name | Impressions ASC
C | 7
B | 8
A | 10
感谢您的关注
推荐答案
我将添加与上一个问题几乎相同的答案.您可以通过联接而不是单独的查询来完成所有操作;
I'll add almost the same answer as on your previous question. You can do it all in a join instead of separate queries;
SELECT t1.id as name, COUNT(DISTINCT t2.column1) Impressions
FROM table1 t1
LEFT JOIN table2 t2
ON t1.id=t2.column2
WHERE t1.column1 = 1
AND LEFT(date,10) BETWEEN '2013-01-01' AND '2013-12-31'
GROUP BY t1.id
ORDER BY Impressions DESC
这篇关于sql1获取名称,sql2获取印象,我需要按印象对名称进行排序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文