我被给予以下sql,这似乎在通过apache方解码导入时有问题。
SELECT DISTINCT a.abc, t.desc, m.qprs, m.mpn,
m.ohug, p.tre, p.status
FROM (table_a m table_b p
ON m.mat = p.mat)
INNER JOIN table_c t ON t.mat = m.mat
WHERE t.lang = 'E' AND p.plant LIKE '110%'
ORDER BY p.plant desc;
具有Teradata详细知识的人可以证实,如果这种语法是正确的吗?
如果没有,那么什么是正确的语法?
提前致谢。
该语法不正确。
SELECT DISTINCT a.abc, t.desc, m.qprs, m.mpn, m.ohug, p.tre, p.status
FROM table_a m INNER JOIN
---------------^ missing keyword
table_b p
ON m.mat = p.mat INNER JOIN
table_c t
ON t.mat = m.mat
WHERE t.lang = 'E' AND p.plant LIKE '110%'
ORDER BY p.plant desc;
虽然应该允许括号,但不需要括号。
要添加到Gordons答案,关键字desc是保留关键字。最好使用[]来避免错误。
SELECT DISTINCT a.abc, t.[desc], m.qprs, m.mpn, m.ohug, p.tre, p.status FROM table_a m INNER JOIN
table_b p
ON m.mat = p.mat INNER JOIN
table_c t
ON t.mat = m.mat WHERE t.lang = 'E' AND p.plant LIKE '110%' ORDER BY p.plant desc;