我看到了返回工作日的视图。结果将是WHERE子句中的一列,如下所示:
SELECT * FROM dvtv_delivery WHERE (SELECT day FROM dvtv_weekday) = 'Y'
例如:
今天是星期天,在dvtv_weekday返回SUN
在dvtv_delivery中存在SUN列
Mysql中可能吗?当我跑步时,什么也没出现
使用下面我用下,工作
SELECT * FROM dvtv_delivery WHERE SUN = 'Y'
任何答案都将真正有帮助!
对不起我的英语不好
最佳答案
该查询:
SELECT day FROM dvtv_weekday
返回类似于
'SUN'
的字符串,而不返回列SUN
的名称。因此,WHERE等效于:
WHERE 'SUN' = 'Y'
它将始终不返回任何行。
您需要这样的东西:
SELECT * FROM dvtv_delivery
WHERE
CASE (SELECT day FROM dvtv_weekday)
WHEN 'SUN' THEN SUN
WHEN 'MON' THEN MON
WHEN 'TUE' THEN TUE
WHEN 'WED' THEN WED
WHEN 'THU' THEN THU
WHEN 'FRI' THEN FRI
WHEN 'SAT' THEN SAT
END = 'Y'
我假设表
dvtv_delivery
具有所有这些列:SUN, MON, ....
关于mysql - 如何在另一个查询中将SQL查询结果用作列?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54974088/