2013-08-30 11 views
1

我遇到了一个我确定很容易实现的问题。我有一些商品的桌子。它包含所有信息,包括制造商的ID。有关制造商的信息在单独的表格中。当用户搜索时,他们有过滤器选项。我遇到麻烦的是制造商过滤。MySQL通过索引ID从单独的表中排序

Products Table: cs_products 
id | name | manufacturer_id 
--------------------------- 
1 | mic  | 3 
2 | cable | 2 
3 | speaker | 1 

Manufacturer Table: cs_manufacturer 
id | name 
------------------ 
1 | JBL 
2 | Rapco 
3 | Shure 

当查询跑到我需要按cs_manufacturer.name:

mysql_query("SELECT * FROM cs_products ORDER BY cs_manufacturer.name") 

什么是正确的语法呢?

+0

谷歌'的MySQL Join'。另请注意,在PHP 5.5中不推荐使用'mysql_'扩展名。移到像mysqli_或PDO这样的新扩展 – Itay

回答

4
SELECT * FROM cs_products JOIN cs_manufacturer 
ON cs_product.manufacturer_id = cs_manufacturer.id 
ORDER BY cs_manufacturer.name 
2

您错过了您的加入。

SELECT * FROM cs_products 
JOIN cs_manufacturer on cs_products.manufacturer_id = cs_manufacturer.id 
ORDER BY cs_manufacturer.name