我有两个表,其中一个有一个字段,其中包含像“1111AAA”这样的字符串,另一个具有相同的字段,但具有这种结构“1111 AAA”。我想用 '' 替换空格,但我在左连接的 ON 附近有一个错误。
我把代码放在下面:
select idticket, bt.matricula, bv.vehicle
from b_ticket bt
left JOIN b_vehicle bv ON REPLACE(bv.matricula, ' ', '') ilike ON REPLACE(bt.matricula, ' ', '')
where date_start >= '2019/01/01/'
and date_end <= '2020/01/01'
我无法更改两个表中任何一个的值。而且我也尝试了 TRIM 函数,但它不起作用,因为它删除了字符串开头和结尾的空格,而不是单词之间的空格。
任何的想法?
谢谢!
错误信息:ERROR:sintax error near «ON» LINE 3: ... bv ON REPLACE(bv.matricula, ' ', '') ilike ON REPLACE...
ON
您的JOIN
子句中很可能有一个无关的关键字:
SELECT
idticket, bt.matricula, bv.vehicle
FROM
b_ticket AS bt LEFT JOIN b_vehicle AS bv
ON REPLACE(bv.matricula, ' ', '') ILIKE REPLACE(bt.matricula, ' ', '')
WHERE
date_start >= '2019/01/01/' AND date_end <= '2020/01/01';
正如错误所述:谓词必须是任何有效的布尔表达式,但其中不能包含ON
关键字。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句