通过避免特定行来选择SELECT

时间:2017-05-24 07:04:13

标签: php mysql sql

我有一个包含许多列的表。每行包含唯一的ID字段。如何在不选择存储在变量$ doNot中的id的行的情况下选择5行。

目前我正在使用以下查询。

"https://maps.googleapis.com/maps/api/staticmap?
size=300x300&key=YOUR_KEY&path=enc:" + direction.routes[0].overview_polyline

考虑下表:

$qry="SELECT title, link FROM posts WHERE id > (SELECT MAX(id) - 5 FROM news)";

我希望id | title | link _____________________________________ 1 | title_1 | link_1 2 | title_2 | link_2 3 | title_3 | link_3 4 | title_4 | link_4 5 | title_5 | link_5 6 | title_6 | link_6 7 | title_7 | link_7 8 | title_8 | link_8 使用上表中的上述查询

3 个答案:

答案 0 :(得分:0)

使用LIMIT指定要返回的行数:

SELECT title, link
FROM posts
ORDER BY ID DESC
LIMIT 5

答案 1 :(得分:0)

如果$ doNot是一个表变量,你应该能够简单地在posts.id上进行子查询:

SELECT title, link FROM posts WHERE id NOT IN (SELECT id FROM $doNot) LIMIT 5;

答案 2 :(得分:0)

SELECT title, link FROM posts WHERE NOT (id = $doNot) LIMIT 5