我有两列的SQL表Date和User,包含以下行:
**Date User**
2009-02-20 Danny
2009-02-20 Matthew
2009-02-15 William
2009-02-15 Abner
2009-12-14 Joseph
1900-01-01 Adam
1900-01-01 Eve
Run Code Online (Sandbox Code Playgroud)
给定日期,我应该如何编写WHERE子句以返回该日期的用户列表,或者如果找不到该日期的用户用户,则返回下一个更早的日期的用户列表.例如,如果给定日期为" 2009-02-19 ",则返回的用户列表应为William和Abner.
SELECT User
FROM MyTable
WHERE MyDate = (SELECT MAX(MyDate) FROM MyTable WHERE MyDate <= '2009-02-19')
Run Code Online (Sandbox Code Playgroud)
SELECT [User] FROM myTable WHERE Date =
(SELECT Max(Date) FROM myTable WHERE Date <= '2009-02-19')
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3040 次 |
| 最近记录: |