我想从具有特定ID的数据库返回结果,而其他结果不等于该id。但必须先显示指定的ID值。
查询:
"SELECT ID, post_title, post_author, post_date
FROM `{$wpdb->prefix}posts`
WHERE post_status = 'publish' AND post_type = 'post'
AND ID = $sticky[0]
ORDER BY post_date DESC LIMIT $postlimit"
这只返回一个结果。 我也尝试过:
"SELECT ID, post_title, post_author, post_date
FROM `{$wpdb->prefix}posts`
WHERE post_status = 'publish' AND post_type = 'post'
ORDER BY $sticky[0], post_date DESC LIMIT $postlimit"
但是这个查询没有返回任何结果,任何人都知道我哪里出错了。 干杯
答案 0 :(得分:1)
你可以试试这样的东西,它会先给你带有匹配id的记录,而不是按post_date
按降序排列的其他记录....
SELECT ID, post_title, post_author, post_date FROM `{$wpdb->prefix}posts` WHERE post_status = 'publish' AND post_type = 'post' ORDER BY (CASE ID WHEN $sticky[0] THEN 1 ELSE 2 END),post_date DESC LIMIT $postlimit;