我有两张名为“Regions”和“city_list”的表:
REGIONS TABLE:
r_id r_code r_name
1 REGION I Ilocos Region
2 REGION II Cagayan Valley
3 REGION III Central Luzon
4 REGION IV-A CALABARZON
5 REGION IV-B MIMAROPA
CITY_LIST TABLE:
city_id city_name city_region
32 Catbalogan REGION VIII (Eastern Visayas)
33 Cauayan REGION II (Cagayan Valley)
34 Cavite City REGION IV-A (CALABARZON)
35 Cebu City REGION VII (Central Visayas)
87 City of Naga REGION VII (Central Visayas)
当用户从 city_list 表中选择城市名称时,我想引用区域表。例如:
用户从下拉列表中选择“Cauauyan”,服务器从Regions表中返回区域代码,即“r_code”列。
我可以在LIKE中使用JOIN语句而不在 city_list 表中添加区域ID列吗?是否有可能在没有“(卡加延河谷)”的情况下获得city_region中的值,如“REGION II”,并使用该值获取REGIONS表中的r_id?
答案 0 :(得分:0)
SELECT r.r_id
FROM REGIONS r
WHERE r.`r_code` IN(
SELECT LEFT(`CITY_LIST`.`city_region`,INSTR(`CITY_LIST`.`city_region`,"(")-1) AS Region_id FROM `CITY_LIST`);