求一查询语句
有A表,表中有如下记录:
sheath_no wtdrum_no type
SSH0111111111 200WF1A1230GYTA-24B1
SSH0111111111.01100WF1A1234GYTA-24B1
有B表,表中有如下记录:
sheath_nocoloring serial_noatt1310att1550 pmd
SSH0111111111blue 10.3180.191 0.023
SSH0111111111orange 21.3181.191 1.023
SSH0111111111green 32.3182.191 2.023
SSH0111111111brown 43.3183.191 3.023
SSH0111111111grey 54.3184.191 4.023
SSH0111111111white 65.3185.191 5.023
现想得到如下结果:
sheath_no wtdrum_no type coloring serial_no att1310att1550 pmd
SSH0111111111.01100WF1A1234GYTA-24B1blue1 0.3180.1910.023
SSH0111111111.01100WF1A1234GYTA-24B1orange2 1.3181.1911.023
SSH0111111111.01100WF1A1234GYTA-24B1green3 2.3182.1912.023
SSH0111111111.01100WF1A1234GYTA-24B1brown4 3.3183.1913.023
SSH0111111111.01100WF1A1234GYTA-24B1grey5 4.3184.1914.023
SSH0111111111.01100WF1A1234GYTA-24B1white6 5.3185.1915.023
SSH0111111111两个表中是对应的,用这个查询简单,但用SSH0111111111.01不知能不能查询,如果能查得话,该如何写。
谢谢
[解决办法]
--如果是oracle则如下:
select a.* , b.* from a , b where (case when instr('.',sheath_no) > 0 then a.sheath_no = substr(b.sheath_no , 1, instr('.',sheath_no) - 1) else a.sheath_no = b.sheath_no end)