从代码编辑器复制/粘贴代码到终端时,我在终端中收到以下错误:
read.table
这是有问题的SQL代码:
mismatched input ')' expecting ( near 'VARCHAR' in primitive type specification
我使用“ substr”子句的原因是因为我要在一个表中加入的数字前面有一个字母:
例如left outer join order_history b
ON CAST(substr(a.order_id__c, 2)AS VARCHAR) = CAST(b.order_id AS VARCHAR)
和P123456
答案 0 :(得分:0)
VARCHAR
不是the CAST()
function的有效类型。您可以改用CHAR
。另外,由于SUBSTR()
返回一个字符串,因此不必CAST
返回其结果。
我想在这种情况下,MySQL隐式强制转换应该允许您这样做:
substr(a.order_id__c, 2) = b.order_id
否则,我会推荐:
CAST(substr(a.order_id__c, 2) AS SIGNED) = b.order_id
答案 1 :(得分:0)
VARCHAR可以在CAST中使用。
该错误是因为未提及VARCHAR的长度。