以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- SQL语句请教 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=106086) |
-- 作者:ap9709130 -- 发布时间:2017/9/1 17:27:00 -- SQL语句请教 老师 假如有两个表 A,B, 两个表都只有一个列 客户名称 A表的客户数量比B表的客户数量多 现在相用SQL语句在A表中生成一个新的逻辑列,名称为 客户 ,如果A表中的客户 在B表中存在,那么这个逻辑列为:TRUR ,否则为:FALSE 这个SQL语句要怎么写?多谢!
|
-- 作者:有点甜 -- 发布时间:2017/9/1 17:47:00 -- 如果是需要查询表,就这样写
Select a.客户名称, b.客户名称, (b.客户名称 is not null) As 逻辑列 from A Left Join B on a.客户名称=b.客户名称 |
-- 作者:ap9709130 -- 发布时间:2017/9/1 17:59:00 -- 多谢老师 |
-- 作者:ap9709130 -- 发布时间:2017/9/6 10:59:00 -- 老师 今天测试了一下,Select a.客户名称, b.客户名称, (b.客户名称 is not null) As 逻辑列 from A Left Join B on a.客户名称=b.客户名称 会出错。 但是Select a.客户名称, b.客户名称 from A Left Join B on a.客户名称=b.客户名称 这样就没有问题。数据也是对的,b.客户名称 有些是空。要怎么才能实现逻辑列呢?
|
-- 作者:有点甜 -- 发布时间:2017/9/6 11:10:00 -- 代码没问题,在sql测试窗口,报什么错?
|
-- 作者:ap9709130 -- 发布时间:2017/9/6 11:18:00 -- 我是在窗口中测试的,会出错。刚才又在SQL窗口测试。结果也是一样。 Select a.客户名称, b.客户名称 from A Left Join B on a.客户名称=b.客户名称 没有问题 可以执行 Select a.客户名称, (b.客户名称 is not null) As 逻辑列 from A Left Join B on a.客户名称=b.客户名称 就会出错,报a, b 处有错误
|
-- 作者:有点甜 -- 发布时间:2017/9/6 11:21:00 -- 我这样测试没问题,请贴出完整代码。
Select a.第一列, (b.第一列 is not null) As 逻辑列 from {表A} as a Left Join {表B} as b on a.第一列=b.第一列 |
-- 作者:ap9709130 -- 发布时间:2017/9/6 11:23:00 -- 老师 刚才我用单表试了一下也不行 select ([客户名称] is not null) as 客户名称 form 表A where 条件 会报错:关键字 is 附近有错误。
|
-- 作者:有点甜 -- 发布时间:2017/9/6 11:25:00 -- Select a.第一列, (b.第一列 <> null) As 逻辑列 from {表A} as a Left Join {表B} as b on a.第一列=b.第一列 |
-- 作者:ap9709130 -- 发布时间:2017/9/6 11:36:00 -- 还是会出错。 |