MySQL二级联动双表联查 sql怎么写,如何进行查询,为何最多只能查到省,无法查到市
二级联动?你是指两张表做关联吗,可以用join完成,我给你一个我测试好得实例,根据你自己修改:
CREATE TABLE province (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
PRIMARY KEY (id)
);
INSERT INTO province (name) VALUES ('北京'),('上海'),('广东'),('河南'),('湖南');
CREATE TABLE city (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
province_id INT NOT NULL,
PRIMARY KEY (id),
FOREIGN KEY (province_id) REFERENCES province(id)
);
INSERT INTO city (name, province_id) VALUES ('北京市', 1), ('上海市', 2), ('广州市', 3), ('深圳市', 3), ('郑州市', 4), ('长沙市', 5);
SELECT p.name AS province, c.name AS city
FROM province p
LEFT JOIN city c ON p.id = c.province_id
WHERE p.name = '广东'