在我的SQL查询中,我正在检查不同的参数。当插入的行程代码的每个表中都有数据时,不会发生任何奇怪的事情。但是当一个表没有数据时,我根本就没有收到任何数据。即使其他表格有数据。所以我需要能够检查表中是否有数据,如果有,我需要选择。MYSQL SELECT:检查rowdata是否存在
SELECT roadtrip_tblgeneral.*,
GROUP_CONCAT(distinct roadtrip_tblhotels.hotel) as hotels,
GROUP_CONCAT(distinct roadtrip_tbllocations.location) as locations,
GROUP_CONCAT(distinct roadtrip_tbltransports.transport) as transports
FROM roadtrip_tblgeneral
INNER JOIN roadtrip_tblhotels
ON roadtrip_tblgeneral.id = roadtrip_tblhotels.tripid
INNER JOIN roadtrip_tbllocations
ON roadtrip_tblgeneral.id = roadtrip_tbllocations.tripid
INNER JOIN roadtrip_tbltransports
ON roadtrip_tblgeneral.id = roadtrip_tbltransports.tripid
WHERE roadtrip_tblgeneral.tripcode = :tripcode
GROUP BY roadtrip_tblgeneral.id
只有在前面的GROUP_CONCAT表需要检查。我已经尝试过使用关键字EXISTS。
在此先感谢。
谢谢,LEFT JOIN做的工作。如果在特定结果中没有数据,它只会返回空值。 – user2381011