我试图跳过 SQL 查询中的第一行和最后一行(即在本例中跳过 where sequence=0
和 sequence=4
),但是我的SQL 查询似乎不起作用。知道为什么吗?逻辑似乎是正确的:
SELECT * FROM waypoint
WHERE id NOT IN(
(SELECT MIN(ID) FROM waypoint),
(SELECT MAX(ID) FROM waypoint)
)
AND booking_id="1";
最佳答案
您有 7 行。他们的 id 是从 1 到 7。您的 not in
子句会过滤掉 1 和 7。如果您想使用 booking_id=1
跳过第一个和最后一个,您应该将此子句添加到子选择:
SELECT * FROM waypoint
WHERE id NOT IN(
(SELECT MIN(ID) FROM waypoint where booking_id="1"),
(SELECT MAX(ID) FROM waypoint where booking_id="1")
)
AND booking_id="1";
关于mysql - SELECT 跳过第一行和最后一行并在中间选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28472457/