如何选择多个表? [英] How to select multiple tables?

查看:62
本文介绍了如何选择多个表?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

country | total users count | active users count | inactive users count | discipline subscribers count | top discipline | study level subscribers count | top study level

表格国家/地区

country_id | short_name

表用户(如果状态= 1无效,则状态= 2)

table user (if status = 2 active if status = 1 inactive)

id | country_id | status 

表user_subscribed_disciplines

table user_subscribed_disciplines

id | user_id |discipline_id

表announcement_disciplin

table announcement_disciplin

id | name

表user_subscribed_study_levels

table user_subscribed_study_levels

id | user_id | study_level_id

表cat_study_levels

table cat_study_levels

id | name

答案必须是这样

country | total users count | active users count | inactive users count | discipline subscribers count | top discipline | study level subscribers count | top study level
USA     |       506         |          500       |     6                |    50                        |          PHD   |          90                   |  Social History
CAN     |       406         |          406       |     0                |    50                        |          POS   |          0                   |  Social History

推荐答案

您应使用条件语句,如下所示.别忘了在您的用户"表中加上''.

You should use a conditional statement, like the following. Do not forget to put "``" to your "user" table.

SELECT countries.short_name, COUNT(user.id), SUM(case when `user`.status = 0 then 1 else 0 end) as variablename FROM `user` RIGHT JOIN countries ON `user`.country_id = countries.country_id GROUP BY short_name;

这篇关于如何选择多个表?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆