2
我對SQL中的表有以下架構。查找最大值而不具有聚合函數
Owner (ownerid, name, phone, age)
我要求寫一份聲明,以在數據庫中找到的最古老的擁有者不使用任何聚合函數如MAX。我也不允許使用任何特定於任何DBMS的東西。
感謝您的幫助。
我對SQL中的表有以下架構。查找最大值而不具有聚合函數
Owner (ownerid, name, phone, age)
我要求寫一份聲明,以在數據庫中找到的最古老的擁有者不使用任何聚合函數如MAX。我也不允許使用任何特定於任何DBMS的東西。
感謝您的幫助。
可以使用EXISTS
運營商,這是對所有符合SQL-RDBMS標準:
SELECT age
FROM Owner o1
WHERE NOT EXISTS (SELECT 1 FROM Owner o2 WHERE o2.age > o1.age)
此查詢背後的想法是不言自明的:最古老的老闆就是這樣一個老闆o1
不存在其他所有者o2
,使o2
比o1
舊。
這是功課還是一些面試問題,旨在向你展示面試官是多麼聰明? – 2013-03-24 20:54:19
它來自我在統一數據庫系統上學習的一門課的過去考試報告。 – 2013-03-24 21:54:58
所以這是一個問題,告訴你你的老師有多聰明:) – 2013-03-24 22:08:40