SQL-查询-不在选择中的位置
好的,这是我的SQL:-SQL-查询-不在选择中的位置,sql,sql-server-2008,Sql,Sql Server 2008,好的,这是我的SQL:- SELECT Telephone, Houseno, Street, Tostreet, Passengername, Acceptancedate FROM Telephone WHERE Acceptancedate !> '2014/05/01' AND Telephone LIKE '011%' AND ( Zoneno = '6'
SELECT Telephone,
Houseno,
Street,
Tostreet,
Passengername,
Acceptancedate
FROM Telephone
WHERE Acceptancedate !> '2014/05/01'
AND Telephone LIKE '011%'
AND ( Zoneno = '6'
OR Zoneno = '5'
OR Zoneno = '9'
OR Zoneno = '108' )
AND Telephone = 'XXX'
ORDER BY Acceptancedate
这将显示此电话号码的5条记录
但是,如果我更改!>代码>至>
它显示了3条记录
我的SQL是正确的,但我只想在AcceptanceDate>“2014/05/01”
时显示此电话号码(因为电话号码不是唯一的)
任何帮助都将不胜感激 您可以使用不存在
排除特定日期后出现的电话号码
SELECT Telephone,
Houseno,
Street,
Tostreet,
Passengername,
Acceptancedate
FROM Telephone AS t
WHERE Telephone LIKE '011%'
AND Zoneno IN ('6', '5', '9', '108')
AND Telephone = 'XXX'
AND NOT EXISTS
( SELECT 1
FROM Telephone AS t2
WHERE t2.Telephone = t.Telephone
AND t2.Acceptancedate > '20140501'
);
您应该这样编写where
子句:
WHERE Acceptancedate <= '2014-05-01' AND
Telephone LIKE '011%' AND
Zoneno IN ('6', '5', '9', '108') AND
Telephone = 'XXX'
WHERE Acceptancedate您的用例是什么?如果您更改where语句中的运算符,那么很明显会得到不同的结果,那么通过更改您想说什么!>to>?基本上我想显示上面SQL中的所有数字,其中电话不在下面的查询中;选择*from Telephone WHERE acceptance data>'2014/05/01'谢谢,这正是我需要的:)