我正在尝试对配置单元中的两个表执行左外部联接。这里的连接条件涉及 LIKE
接线员。这是我试图执行的查询:
SELECT *
FROM a
LEFT OUTER JOIN
(SELECT *
FROM b
WHERE class = 'ex') ON b.mo LIKE CONCAT(a.device_name ,'%')
AND a.time_stamp BETWEEN to_utc_timestamp(from_unixtime(cast(b.first_time AS BIGINT) - 660), "z")
AND to_utc_timestamp(from_unixtime(cast(b.first_time AS BIGINT) + 60),"z")
当我执行这个查询时,我得到一个错误
在联接“%”中同时遇到左别名和右别名
这里的目的是在给定条件下,即基于设备名和 time_stamp
.
如果有人能帮我,我会非常感激的。
1条答案
按热度按时间kg7wmglp1#
like
中不支持join
条件。解决这个问题的一种方法是在where
条款。但这种方法的问题是
join
变成一个inner join
因为您正在筛选正确的表(在本例中是b)。