求join关系的sql语句!请进!
有两个表A,B
A中有三个字段a,b,c
B中有两个子段code,name
b字段的值是枚举类型的,有两个值,K和空
c字段的值对应B表中的code,但是只有在b字段为K时,c字段才有值
现在想select出a的所有列,请问join关系如何写,谢谢!
我试着用
select A.a,A.b,
case A.b
when 'K' then B.name
when '' then ''
end
from A
left join B on B.code = A.c
这样出来的结果是不对的,请问应该如何建立join关系才是正确的,谢谢!
A中有三个字段a,b,c
B中有两个子段code,name
b字段的值是枚举类型的,有两个值,K和空
c字段的值对应B表中的code,但是只有在b字段为K时,c字段才有值
现在想select出a的所有列,请问join关系如何写,谢谢!
我试着用
select A.a,A.b,
case A.b
when 'K' then B.name
when '' then ''
end
from A
left join B on B.code = A.c
这样出来的结果是不对的,请问应该如何建立join关系才是正确的,谢谢!
...全文
相关推荐
SQL语句优化之JOIN和LEFT JOIN 和 RIGHT JOIN语句的优化
在数据库的应用中,我们经常需要对数据库进行多表查询,然而当数据量非常大时多表查询会对执行效率产生非常大的影响,因此我们在使用JOIN和LEFT JOIN 和 RIGHT JOIN语句时要特别注意
sql语句join中on和where的区别
本文简单描述了sql语句join中on和where的区别以及其原理
sql语句中join的用法
sql语句中join的用法 sql语句中join的用法
SQL语句left join/right join/inner join 的用法比较
SQL语句left join/right join/inner join 的用法比较 SQL语句left join/right join/inner join 的用法比较
SQL中的left join right join
数据库常见的join方式有三种:inner join, left outter join, right outter join(还有一种full join,因不常用,本文不讨论)。这三种连接方式都是将两个以上的表通过on条件语句,拼成一个大表。


