mysql - SQL 匹配行

标签 mysql sql

我在匹配其他表中的值并获取相应的值时遇到问题。我有两张表,表一用于产品,表 2 用于零件,我需要将第二个表中的零件编号与第一个表中的 oe 编号进行匹配并获取 SKU。 问题是 OE 编号是一堆数字,我需要使用类似 instr.例如,表格如下所示。

产品表

 OeNum       |     SKU             
123-546-625  |     A001         
568-623-855  |     A002     

零件表

PArtid
 623
 625

例如,我需要检查 OENUM 中是否有任何行具有类似零件号的字符串,如果有则返回 SKU。在上面的示例中,partid 623 位于 oenumber 的第二行,因此它返回值为

partID   |   SKU
  623    |   A002
  625    |   A001

我使用的查询为:

select s.sku, p.id 
from sk s, part p 
where instr(s.oenum,p.id)>0;

但它似乎不起作用。

请帮忙。

最佳答案

如果您的表格中没有太多数据,我可以建议您尝试以下操作:

select s.sku, p.id from sk s join  part p on s.oenum like '%'+p.id+'%'

关于mysql - SQL 匹配行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37741780/

相关文章:

javascript - HTML单选按钮在数据库中保存第一个单选按钮值

php - varchar 与文本 - MySQL

MySQL 多个结果集的乘积

sql - 无法在SparkSQL中选择每个组的前10条记录

mysql - Impala 正则表达式在管道分隔列表中查找 "2"但不是 "255"

php - 使用 PHP & MySQL 的考勤系统

PHP MySQL 使用 mysqli_fetch_all 分页数据

mysql - 选择特定时期内的所有可用项目

MySQL更新语句存储排名位置

mysql - 如何复制记录并指定字段值