MySQL“;及;声明问题
我有2张表(下面的示例) 我想提取MySQL“;及;声明问题,mysql,datetime,Mysql,Datetime,我有2张表(下面的示例) 我想提取name、datein都相等且dateout都为空的数据 我正在使用下面的查询,但得到的是空响应 SELECT name,datein FROM aTable WHERE (name = 'test' AND dateout IS NULL) AND (SELECT name FROM bTable WHERE name = 'test' AND dateout IS NULL) 有什么我遗漏的吗?试试这个 SELECT name,dat
name
、datein
都相等且dateout
都为空的数据
我正在使用下面的查询,但得到的是空响应
SELECT name,datein
FROM aTable
WHERE (name = 'test' AND dateout IS NULL) AND
(SELECT name FROM bTable WHERE name = 'test' AND dateout IS NULL)
有什么我遗漏的吗?试试这个
SELECT name,datein,dateout FROM(select * from atable union select * from btable)as tt
where tt.name ='test' and tt.dateout is null;
试试这个
SELECT name,datein,dateout FROM(select * from atable union select * from btable)as tt
where tt.name ='test' and tt.dateout is null;
您需要将
EXISTS
添加到查询中:
SELECT t1.name, t1.datein
FROM aTable AS t1
WHERE (t1.name = 'test' AND t1.dateout IS NULL) AND
EXISTS(SELECT name
FROM bTable AS t2
WHERE t2.name = 'test' AND
t2.datein = t1.datein AND
t2.dateout IS NULL)
或者,不为name
字段提供特定值:
SELECT t1.name, t1.datein
FROM aTable AS t1
WHERE t1.dateout IS NULL AND
EXISTS(SELECT name
FROM bTable AS t2
WHERE t2.name = t1.name AND
t2.datein = t1.datein AND
t2.dateout IS NULL)
您需要将
EXISTS
添加到查询中:
SELECT t1.name, t1.datein
FROM aTable AS t1
WHERE (t1.name = 'test' AND t1.dateout IS NULL) AND
EXISTS(SELECT name
FROM bTable AS t2
WHERE t2.name = 'test' AND
t2.datein = t1.datein AND
t2.dateout IS NULL)
或者,不为name
字段提供特定值:
SELECT t1.name, t1.datein
FROM aTable AS t1
WHERE t1.dateout IS NULL AND
EXISTS(SELECT name
FROM bTable AS t2
WHERE t2.name = t1.name AND
t2.datein = t1.datein AND
t2.dateout IS NULL)
为什么要试试这个?它改变了什么?它有什么作用?解释你的答案。为什么要尝试这个?它改变了什么?它有什么作用?解释你的答案。