根据两个表中的数据选择行

时间:2012-08-02 19:25:55

标签: mysql

我正在尝试学习如何将一个表中的数据与另一个表相关联。

假设我有一张名为'car id'的表,除了存储在单独表格中的汽车的ID之外,其他任何内容都没有。这个“独立”表称为“汽车”,包含汽车ID和品牌和型号。

我试图想出一个mysql语句,通过将car id表中的id与car table相关联来从car表中选择行。

类似的东西:

mysql_select(“SELECT * FROM cars WHERE id = [”SELECT id FROM car_id“]”);

我感谢任何建议。

5 个答案:

答案 0 :(得分:2)

我不知道为什么你会有一个只有汽车id的表,然后是一张包含这些汽车信息的表,但这里有你需要的那种查询

SELECT cars.* FROM cars JOIN ids on cars.id = ids.car_id

关键是使用JOIN

答案 1 :(得分:1)

Select * FROM cars,ids where cars.id=ids.id and ids.id={something}

其中{something}是id的一些条件

答案 2 :(得分:1)

试试这个......

SELECT cars.*, cars_id.*
FROM cars
LEFT JOIN cars_id
ON cars_id.id = cars.id

答案 3 :(得分:1)

您必须使用JOIN

SELECT * FROM cars INNER JOIN car_id on cars.id=car_id.id

答案 4 :(得分:0)

您正在寻找JOIN。对于你的例子,像这样:

SELECT * FROM `cars` C
JOIN `ids` I ON C.id=C.car_id

请注意,加入两个表的方式有很多种;你需要更好地指定你需要的东西,或者开始阅读联接。