选择相同的条目(LIKE)

时间:2013-08-30 07:46:59

标签: mysql concat sql-like

SELECT F.* FROM FlightSchedule F, Aircrafts A 
WHERE F.aircraftType = A.aircraftType 
LIKE CONCAT('\"','%', F.aircraftType, '%','\"') AND F.flightNum_arr='3913';

数据库表的示例内容:

表"时间表"

aircraftType = "320"

表"飞机"

aircraftType = "A320"
aircraftType = "A330"

查询的预期结果是选择具有aircraftType = "320"flightNum_arr = "3913"的条目,因为"320""A320"相同。问题是"320""A320"在此查询中不被视为相同。如何解决问题?

1 个答案:

答案 0 :(得分:3)

使用=进行完全匹配,或使用LIKE进行模式匹配,但不要将它们都放在同一个表达式中。而且您不需要将引号连接到LIKE模式。

SELECT F.*
FROM FlightSchedule F
JOIN Aircrafts A
ON A.aircraftType LIKE CONCAT('%', F.aircraftType, '%')
WHERE F.flightNum_arr = '3913'