我有以下代碼,並且我想根據他的總餘額僅獲得用戶的聯盟排名。我怎樣才能做到這一點?如何獲得使用MySQL的MySQL查詢排名
// Set League Rank by User
global $post;
$post_author = $post->post_author;
$post_status = 'publish';
$meta_key = 'balance';
$rank = $wpdb->get_var($wpdb->prepare(
"
SELECT *, @rownum := @rownum + 1 from
(
SELECT
SUM(meta_value) as balance,
FROM {$wpdb->postmeta} pm
INNER JOIN {$wpdb->posts} p ON pm.post_id = p.ID
JOIN (SELECT @curRow := 0) r;
WHERE pm.meta_key = %s AND p.post_author = %s AND p.post_status = %s
order by balance desc)x, (SELECT @rownum := 0) r
",
$meta_key, $post_author, $post_status
));
可以幫助我嗎?
謝謝。
你可以發佈有問題的兩個表的表定義嗎? – Orangepill 2013-05-14 15:08:53
你在哪裏設置$ meta_key – Anigel 2013-05-14 15:14:05
這段代碼很適合檢索每個用戶的餘額。我需要的是獲得排名,這是表中不存在的列。 – qebas 2013-05-14 15:15:02