話不多說直接上測試代碼:
create table persontest( name nvarchar(10), age int)
insert into persontest(name, age)values('a',3),('a',3),('b',4),('b', 3)
以上sql跑完了之后你應該能得到大概這么一個表:
name agea 3a 3b 4b 3
現在我要進行類似這么一個查找(該sql肯定是不能跑的, 我只是用它來表達我想要做的查詢)
select name, agefrom persontest group by namehaving all age = 3
?
我期待的結果是:
(a,3), 或者能直接查出(a)也是可以接受的。
?
因為對于a來說, 所有的a的age都是3,因此a符合條件, 我要a了
b的話, 有一個4, 所以不全是3, 因此b不合格。b被踢掉了。
?
就是這么個需求。
?
由于聚合函數里我沒找到類似于"all"這樣的函數, 所以弄不清這個到底如何寫。
有誰有辦法嗎?非常感謝?!A豆不是問題。
補充:數據庫是sql server
提問個奇怪的sql
楊__羊羊
2018-12-07 07:56:24