Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQL条件_Sql_Count - Fatal编程技术网

SQL条件

SQL条件,sql,count,Sql,Count,我想显示澳大利亚以外的部门名称和部门数量 问题是下面的代码仍然提供了一个计数,包括澳大利亚的部门 (编辑)-这更接近解决方案,但仍然不完全正确。-没有返回正确的计数 SELECT department_name, COUNT(COUNTRIES.country_id) FROM DEPARTMENTS, COUNTRIES JOIN ( SELECT COUNT(COUNTRIES.country_name) AS COUNTRY FROM COUNTRIES JO

我想显示澳大利亚以外的部门名称和部门数量

问题是下面的代码仍然提供了一个计数,包括澳大利亚的部门

(编辑)-这更接近解决方案,但仍然不完全正确。-没有返回正确的计数

SELECT department_name, COUNT(COUNTRIES.country_id)
FROM DEPARTMENTS, COUNTRIES
JOIN (
     SELECT COUNT(COUNTRIES.country_name) AS COUNTRY
     FROM COUNTRIES
     JOIN DEPT_LOCATIONS ON COUNTRIES.country_id = DEPT_LOCATIONS.country_id
     WHERE country_name <> 'Australia'
     ) AS C ON COUNTRY = c.country
     GROUP BY department_name;
你试过这个吗

SELECT department_name, COUNT(DEPT_LOCATIONS.country_id)
FROM DEPARTMENTS
LEFT JOIN DEPT_LOCATIONS ON DEPARTMENTS.department_id = DEPT_LOCATIONS.department_id       
GROUP BY department_name
HAVING department_name <> 'Australia'
选择部门名称、计数(部门位置、国家/地区id)
来自部门
左键连接DEPARTMENTS.department\u id=DEPT\u LOCATIONS.department\u id上的DEPT\u位置
按部门名称分组
部门名称为“澳大利亚”
您试过这个吗

SELECT department_name, COUNT(DEPT_LOCATIONS.country_id)
FROM DEPARTMENTS
LEFT JOIN DEPT_LOCATIONS ON DEPARTMENTS.department_id = DEPT_LOCATIONS.department_id       
GROUP BY department_name
HAVING department_name <> 'Australia'
选择部门名称、计数(部门位置、国家/地区id)
来自部门
左键连接DEPARTMENTS.department\u id=DEPT\u LOCATIONS.department\u id上的DEPT\u位置
按部门名称分组
部门名称为“澳大利亚”

我自己解决了干杯

SELECT department_name, COUNT(COUNTRIES.country_id)
FROM DEPARTMENTS, COUNTRIES
RIGHT JOIN DEPT_LOCATIONS ON DEPT_LOCATIONS.country_id = COUNTRIES.country_id
WHERE DEPARTMENTS.department_id = DEPT_LOCATIONS.department_id
AND country_name <> 'Australia'
GROUP BY department_name;
选择部门名称、计数(国家/地区、国家/地区id)
来自各部门、国家/地区
在DEPT\u LOCATIONS.country\u id=COUNTRIES.country\u id上右键加入DEPT\u LOCATIONS
其中DEPARTMENTS.department\u id=depart\u LOCATIONS.department\u id
国家名称为“澳大利亚”
按部门名称分组;

我自己解决了干杯

SELECT department_name, COUNT(COUNTRIES.country_id)
FROM DEPARTMENTS, COUNTRIES
RIGHT JOIN DEPT_LOCATIONS ON DEPT_LOCATIONS.country_id = COUNTRIES.country_id
WHERE DEPARTMENTS.department_id = DEPT_LOCATIONS.department_id
AND country_name <> 'Australia'
GROUP BY department_name;
选择部门名称、计数(国家/地区、国家/地区id)
来自各部门、国家/地区
在DEPT\u LOCATIONS.country\u id=COUNTRIES.country\u id上右键加入DEPT\u LOCATIONS
其中DEPARTMENTS.department\u id=depart\u LOCATIONS.department\u id
国家名称为“澳大利亚”
按部门名称分组;

不要混合显式连接和逗号分隔的隐式连接。太令人困惑了。并切换到左连接而不是右连接,因为这更容易理解!不要混合使用显式连接和逗号分隔的隐式连接。太令人困惑了。并切换到左连接而不是右连接,因为这更容易理解!将
部门名称“Australia”
放在WHERE子句中。将
部门名称“Australia”
放在WHERE子句中。