我有一个表wp_views
,列postid
和views
我想获取具有最高值views
的ID(前4名)
然后使用title
从link
返回wp_posts
和postid
。
这样做的正确方法是什么?
答案 0 :(得分:2)
您可以尝试以下
global $wpdb;
$top4=$wpdb->get_results('SELECT post_title, post_name from `'.$wpdb->prefix.'views`
INNER JOIN `'.$wpdb->prefix.'posts` ON `postid`=`ID`
ORDER BY `views` DESC
LIMIT 4;', ARRAY_A);
答案 1 :(得分:1)
我试图从你的写作中复制你的表结构,并且我已经提出了以下内容:
SELECT id, title, link
FROM wp_views RIGHT JOIN wp_posts ON wp_posts.id = wp_views.post_id
ORDER BY views DESC
LIMIT 4;
你可以在这里试试:http://sqlfiddle.com/#!9/1cea23/1
我正在使用RIGHT JOIN
在结果的wp_posts部分中允许空值。如果您想在结果中避免使用NULL值,可以使用INNER JOIN
代替。