我的查询中有 2 个 select 语句、一个聚合计数和一个左连接,它组合了 2 个表,为我提供了一些我无法访问的信息。我知道我可以创建一个临时表作为这两个查询,然后将它们连接到一个公共行上,在这种情况下是用户 ID。我只想知道是否有办法在一个查询中做到这一点。
我的查询如下:
SELECT usr, COUNT( quiz_id )
AS count
FROM edo_plugin_slickquiz_scores
WHERE usr_practice = 123456
GROUP BY usr;
给我以下
USR COUNT
6 1
7 1
我的第二个查询
SELECT a.user_id, a.meta_value, b.user_nicename
FROM edo_usermeta a LEFT JOIN edo_users b
ON a.user_id = b.id
WHERE a.meta_key = 'user_practice_role';
给我以下
User_id meta_value user_nicename
-----------------------------------
6 | 5 | richbai90
5 | 1 | hi5
8 | 0 | man
7 | 1 | testing123
由于 wordpress 如何设置他们的 usermeta 表,最后的 WHERE 子句是绝对必要的。如果您熟悉 wordpress,您会明白该表如下所示
umeta_id user_id meta_key meta_value
--------------------------------------------------
1 | 1 | first_name | bob
2 | 1 | last_name | builder
3 | 1 | nickname | bob
所以我只想要这个表中 meta_key 是 = 到 user_practice_role 的值
我理解的方式是最好的方式吗?