这就是我正在尝试做的事情。
我有两个系统,它们的值不相同,但很相似。
例如,Table1 的 ID 值可能为 01234
,但在第二个表中,它将被列为 someName 1234
因此,我想修剪 Table1 中的值,并在 table2 中执行类似的搜索以查找该值,最后将每个值的键插入到第三个表中。
它尝试了多种方法,但未能得到我需要的东西。
它尝试了以下操作,但意识到它只会交叉连接所有内容。
SELECT snum,shipToID,sdesc,clientStoreID FROM shipto,stores
where sdesc LIKE CONCAT('%',trim(LEADING '0' FROM clientStoreID),'%')
表格相关信息如下:
stores
snum | sdesc
shipTo
shipToID | clientStoreID
shipTo_stores
Snum | shipToID
我正在尝试使用每个表(snum、shipToID)中的键填充 Table3,其中前导 0 的 clientStoreID 的修剪就像来自商店的 sdesc。
最佳答案
尝试使用CAST()
SELECT CAST('01234' AS UNSIGNED INTEGER)
含义
SELECT snum, shipToID, sdesc, clientStoreID
FROM shipto sh
JOIN stores st
ON sh.clientStoreID = CAST(st.sdesc AS UNSIGNED INTEGER)
关于mysql - 根据不同表中的两个相似值创建表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37485607/