同一张表多条件join

rodsgo 2010-05-20 03:03:44
因为我的dbo.BS1_BaseCode表是根据BaseCodeType='fhfsb'这个状态出结果的
现在我需要BS1_BaseCode表中三个字段的值,但这三个字段要根据BaseCodeType字段的值来分别区分,表现如下(下图是错误的)但是我是要根据状态出结果,不知道SQL应该怎么写
SELECT *,dbo.LD3_Consign.BillNo as abillno FROM dbo.LD3_Consign left Join dbo.BS1_BaseCode on dbo.LD3_Consign.TrafficType=dbo.BS1_BaseCode.BaseCode and BaseCodeType='fyfsb' left Join dbo.BS1_BaseCode on dbo.LD3_Consign.PassType=dbo.BS1_BaseCode.BaseCode and BaseCodeType='fhfsb' WHERE DocNo='$seach1'


...全文
186 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
blue44sky 2010-05-20
  • 打赏
  • 举报
回复
SELECT B.*,dbo.LD3_Consing.BillNo as abillno FROM dbo.LD3_Consign A 
LEFT JOIN Join dbo.BS1_BaseCode B ON A.trafficType = B.BaseCode
WHERE B.BaseCodeType='fyfsb' AND A.TrafficType = A.PassType AND DocNo='$seach1'

应该是这样的
rodsgo 2010-05-20
  • 打赏
  • 举报
回复
我有一个A表,平时是根据它的BaseCodeType字段的值来确定对应的BaseCode字段的值,也就好像这个连接查询语句

left Join dbo.BS1_BaseCode on dbo.LD3_Consign.TrafficType=dbo.BS1_BaseCode.BaseCode and BaseCodeType='fyfsb'

现在我是要在同一个查询里取BaseCodeType字段的三个值来进行连接查询
left Join dbo.BS1_BaseCode on dbo.LD3_Consign.TrafficType=dbo.BS1_BaseCode.BaseCode and BaseCodeType='fyfsb' 
left Join dbo.BS1_BaseCode on dbo.LD3_Consign.PassType=dbo.BS1_BaseCode.BaseCode and BaseCodeType='fhfsb'

SQL应该怎么写才对
北京不不 2010-05-20
  • 打赏
  • 举报
回复
请表述清楚点。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧