我有这个选择声明:
SELECT a.TASK_ID, a.COMPANY, b.INVOICED, b.VALUE AS companyid FROM b_report_week a
INNER JOIN b_company b ON a.COMPANY = b.VALUE
上述说法不起作用,因为b.VALUE在数字前总是有CO_,例如:
CO_123
CO_193
CO_838
但是,如果在SELECT语句中删除了前3个字符,那么它将会离开:
123
193
838
我的帮助将不胜感激,我已经查看了SO并找不到正确的解决方案。
提前致谢
答案 0 :(得分:2)
好吧,当你执行join
:
SELECT a.TASK_ID, a.COMPANY, b.INVOICED, b.VALUE AS companyid
FROM b_report_week a INNER JOIN
b_company b
ON concat('CO_', a.COMPANY) = b.VALUE;
答案 1 :(得分:0)
SELECT a.TASK_ID, a.COMPANY, b.INVOICED, b.VALUE AS companyid FROM b_report_week a
INNER JOIN b_company b ON RIGHT(a.COMPANY,3) = b.VALUE
我假设值总是3个字符..如果你的值总是3个字符,这对你有帮助。