如何从表中检索第一个和最后一个记录。
注意:我不打算按
订购答案 0 :(得分:11)
取决于“第一”和“最后”的含义。
您可以“订购”某个特定列,然后选择“LIMIT 1”,然后选择“ORDER BY ... DESC”来反转。
e.g。
SELECT * FROM table ORDER BY col LIMIT 1
SELECT * FROM table ORDER BY col DESC LIMIT 1
...如果你想在同一个查询中同时使用:
SELECT * FROM table ORDER BY col LIMIT 1
UNION
SELECT * FROM table ORDER BY col DESC LIMIT 1
答案 1 :(得分:4)
问题实际上没有意义,但是,假设您正在讨论表中的第一行和最后一行,这可行,但最好做两个单独的查询,并假设您有一个数字ID列。 MySQL示例:
select * from test where id = (select max(id) from test)
union
select * from test where id = (select min(id) from test)
答案 2 :(得分:2)
SELECT TOP 1 * FROM Table ORDER BY 1
SELECT TOP 1 * FROM Table ORDER BY 1 DESC
假设您的第一列是关键
(那可以在t-sql中使用)