Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.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_Database_Select_Join - Fatal编程技术网

Sql 如何解释结果?

Sql 如何解释结果?,sql,database,select,join,Sql,Database,Select,Join,当我执行SQL时,为什么结果仍然包含isuser=1的数据: SELECT * FROM sys_userdept LEFT JOIN sys_deptdef sys_deptdef ON sys_userdept.nodeid=sys_deptdef.deptid AND isuser=0 ORDER BY sys_userdept.pnodeid,sys_userdept.relationid; 因为你使用了左连接 如果需要isuser=1的数据,请使用内部联接或中的过滤器,其中 SEL

当我执行SQL时,为什么结果仍然包含isuser=1的数据:

SELECT * 
FROM sys_userdept
LEFT JOIN sys_deptdef sys_deptdef ON sys_userdept.nodeid=sys_deptdef.deptid
AND isuser=0 ORDER BY sys_userdept.pnodeid,sys_userdept.relationid;

因为你使用了左连接

如果需要
isuser=1
的数据,请使用
内部联接
中的过滤器,其中

SELECT * 
FROM sys_userdept
LEFT JOIN sys_deptdef sys_deptdef ON sys_userdept.nodeid=sys_deptdef.deptid
WHERE isuser = 0
ORDER BY sys_userdept.pnodeid,sys_userdept.relationid;

另外请注意,不要使用
SELECT*
,而是明确说明您的列

因为您使用了左连接

如果需要
isuser=1
的数据,请使用
内部联接
中的过滤器,其中

SELECT * 
FROM sys_userdept
LEFT JOIN sys_deptdef sys_deptdef ON sys_userdept.nodeid=sys_deptdef.deptid
WHERE isuser = 0
ORDER BY sys_userdept.pnodeid,sys_userdept.relationid;

另外请注意,不要使用
SELECT*
,而是明确说明您的列

这是因为您使用了
左联接
——它从第一个表中获取所有记录,即使联接的表中没有匹配的记录

将您的
isuser=0
条件移动到
WHERE

select * 
from sys_userdept
left join sys_deptdef sys_deptdef on sys_userdept.nodeid=sys_deptdef.deptid
where isuser=0
order by sys_userdept.pnodeid,sys_userdept.relationid;

这是因为您使用了
左联接
——它从第一个表中获取所有记录,即使联接的表中没有匹配的记录

将您的
isuser=0
条件移动到
WHERE

select * 
from sys_userdept
left join sys_deptdef sys_deptdef on sys_userdept.nodeid=sys_deptdef.deptid
where isuser=0
order by sys_userdept.pnodeid,sys_userdept.relationid;