求一查询语句
时间:2011-09-25
来源:互联网
有A表,表中有如下记录:
sheath_no wt drum_no type
SSH0111111111 200 WF1A1230 GYTA-24B1
SSH0111111111.01 100 WF1A1234 GYTA-24B1
有B表,表中有如下记录:
sheath_no coloring serial_no att1310 att1550 pmd
SSH0111111111 blue 1 0.318 0.191 0.023
SSH0111111111 orange 2 1.318 1.191 1.023
SSH0111111111 green 3 2.318 2.191 2.023
SSH0111111111 brown 4 3.318 3.191 3.023
SSH0111111111 grey 5 4.318 4.191 4.023
SSH0111111111 white 6 5.318 5.191 5.023
现想得到如下结果:
sheath_no wt drum_no type coloring serial_no att1310 att1550 pmd
SSH0111111111.01 100 WF1A1234 GYTA-24B1 blue 1 0.318 0.191 0.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 orange 2 1.318 1.191 1.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 green 3 2.318 2.191 2.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 brown 4 3.318 3.191 3.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 grey 5 4.318 4.191 4.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 white 6 5.318 5.191 5.023
SSH0111111111两个表中是对应的,用这个查询简单,但用SSH0111111111.01不知能不能查询,如果能查得话,该如何写。
谢谢
sheath_no wt drum_no type
SSH0111111111 200 WF1A1230 GYTA-24B1
SSH0111111111.01 100 WF1A1234 GYTA-24B1
有B表,表中有如下记录:
sheath_no coloring serial_no att1310 att1550 pmd
SSH0111111111 blue 1 0.318 0.191 0.023
SSH0111111111 orange 2 1.318 1.191 1.023
SSH0111111111 green 3 2.318 2.191 2.023
SSH0111111111 brown 4 3.318 3.191 3.023
SSH0111111111 grey 5 4.318 4.191 4.023
SSH0111111111 white 6 5.318 5.191 5.023
现想得到如下结果:
sheath_no wt drum_no type coloring serial_no att1310 att1550 pmd
SSH0111111111.01 100 WF1A1234 GYTA-24B1 blue 1 0.318 0.191 0.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 orange 2 1.318 1.191 1.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 green 3 2.318 2.191 2.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 brown 4 3.318 3.191 3.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 grey 5 4.318 4.191 4.023
SSH0111111111.01 100 WF1A1234 GYTA-24B1 white 6 5.318 5.191 5.023
SSH0111111111两个表中是对应的,用这个查询简单,但用SSH0111111111.01不知能不能查询,如果能查得话,该如何写。
谢谢
作者: goodxushi 发布时间: 2011-09-25
作者: Veron_04 发布时间: 2011-09-25
你把小数点后的去掉即可.如果是sql server则如下:
select a.* , b.* from a , b where (case when charindex(sheath_no,'.') > 0 then a.sheath_no = left(b.sheath_no , charindex(sheath_no,'.') - 1) else a.sheath_no = b.sheath_no end)
select a.* , b.* from a , b where (case when charindex(sheath_no,'.') > 0 then a.sheath_no = left(b.sheath_no , charindex(sheath_no,'.') - 1) else a.sheath_no = b.sheath_no end)
作者: dawugui 发布时间: 2011-09-25
--如果是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)
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)
作者: dawugui 发布时间: 2011-09-25
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28