我正在尝试编写一个Select语句来比较两列。
我有这些表格:
表1
Code Name
-----------------
ABC Product1
DEF Product2
GHI Product3
和表2
Code2 Price
-------------
ABC-1 4
DEF-2 6
GHI-5 9
我希望它返回
Name Price
------------------
Product1 4
Product2 6
Product3 9
但我的声明返回空
Select Name, Price
From Table1, Table2
Where '%' + Code + '%' LIKE Code2
我看过类似的问题,我不确定我的代码出了什么问题
LIKE
模式始终位于LIKE
:的右侧
Select t1.Name, t2.Price
From Table1 t1 join
Table2 t2
on t2.Code2 like '%' || t1.Code || '%'
注:
- Never在
FROM
子句中使用逗号 - 始终使用正确、明确的标准可读的
JOIN
语法 - 使用多个表限定查询中的所有列引用,以便您(和其他人(知道列的来源
- 字符串串联运算符是
||
- 您想要的模式可能更像
t2.Code2 like t1.Code || '-%'