mysql - 更改字符串(文本到列函数)

标签 mysql sql join

我有两个表,如下所示:

+----+----------------+-----------+-----+
| id | Catalog Number | Pack Size | Qty |
+----+----------------+-----------+-----+
|  1 | K353-J353-5    | 5 kg      |   3 |
|  2 | V3532-3        | 3 kg      |   2 |
|  3 | S32-366-10     | 10 kg     |   1 |
+----+----------------+-----------+-----+

+----+----------------+--------------+
| id | Catalog Number | Product Name |
+----+----------------+--------------+
|  1 | V353-J353      | a            |
|  2 | V3532          | b            |
+----+----------------+--------------+

我想加入这两个表,但不同的目录号格式给我带来了麻烦。目录号始终由“-”字符分隔,但可以有 0 或 1 个“-”。

我管理的唯一方法是通过 Excel 的文本到列函数,SQL 中有等效的方法吗?

提前致谢, 迈克

最佳答案

尝试:

SELECT *
FROM Table1
JOIN Table2 ON Table2.`Catalog Number` LIKE CONCAT(Table1.Catalog Number, '%')

关于mysql - 更改字符串(文本到列函数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18476766/

相关文章:

mysql - 导入数据从mysql传输到hadoop

mysql - SSIS:将表从 MySQL 复制到 SQL Server 2008

sql - 按关联记录的数量对记录进行排序

MySQL LEFT 连接别名问题

.net - 使用 .net 连接表时无响应

php - 使用 PHP 在 MySQL 中导入 .xsl 和 .csv 文件

c# - 列名称或提供的值的数量与表定义不匹配。有任何想法吗?

sql - 根据另一列中的文本更新数据库中的列?

php - 使用条件逻辑: check if record exists; if it does,更新它,如果没有,则创建它

mysql - 使用连接操作在查询中显示重复行