mysql - 是否可以对每个选择使用不同的 where 子句进行 mysql 查询?

标签 mysql select where-clause

我有一个统计本周销售数量的查询。它看起来像这样:

SELECT DAYNAME(SOLD), COUNT(*) FROM SALES_DATA 
WHERE SOLD BETWEEN '2012/10/14 00:00:00' AND '2012/10/21 00:00:00' AND STORE_ID = 1010         GROUP BY DAYNAME(SOLD) ORDER BY DAY(SOLD);

输出如下所示:

DAYNAME(SOLD)   COUNT(*)
Sunday          400
Monday          375
Etc.            Etc.

我想要第三列前一周的销售额以进行比较。但要做到这一点,我需要有一个具有不同日期范围的单独的 where 子句。所以我的问题是我将如何实现这一目标?我对 mysql 很陌生,还没有发现这样的东西。加入会起作用吗?我不太确定它们是如何工作的。我想要的输出是这样的:

DAYNAME(SOLD)   COUNT(*)   COUNT(*)
Sunday          400        550
Monday          375        250
Etc.            Etc.       Etc.

提前致谢!!

最佳答案

你可以使用这样的结构:

select stuff1.common_col, stuff1.col1, stuff2.col2
from
(select common_col, col1 from somewhere where ... ) as stuff1
(select common_col, col1 from somewhere where ... ) as stuff2
where stuff1.common_col = stuff2.common_col

关于mysql - 是否可以对每个选择使用不同的 where 子句进行 mysql 查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13057943/

相关文章:

PHP表格只显示一行

mysql - 使用选择相同的表进行更新[mysql]

mysql - 我怎样才能在where select中返回2行?

t-sql - 创建 T-SQL where 子句以接受 NULL 值

c# - 简单的 Where 子句在 EF5 中停止工作

php - 如何在mysql中搜索?

php - 我丢失了 wordpress 密码。在数据库中,它已在用户表中加密。如何找回密码?

Mysql 将 1 个表合并到第 2 个表中并将列计数在一起

r - 如果位于唯一 ID 的开头或结尾,则过滤连续的相同值

sql-server - 为什么在 Where 子句中使用 Case