我有6个表1.产品p 2.属性a 3.产品和属性pa (ID,pID,aID ) 4.公司c 5. USer u 6.公司和用户cu (ID,cID,uID)
现在在管理中,我想看到公司的产品及其属性。
SELECT p.ID, p.name
from products p
LEFT JOIN Product and Attribute pa ON pa.pID = p.ID
LEFT JOIN Attributes a ON a.pID = pa.aID
LEFT JOIN Company and User cu ON cu.UiD = p.uID AND cu.cID = 121 (spcific company id)
WHERE 1
GROUP BY p.ID发布于 2013-06-17 17:02:20
在MySQL中,GROUP BY意味着ORDER BY
如果不需要特定的顺序,则添加ORDER BY NULL
默认情况下,MySQL按col1、col2、...对所有组进行排序。查询,就好像您指定了ORDER BY col1、col2、...在查询中也是如此。如果显式包含包含相同列列表的ORDER BY子句,MySQL会在没有任何速度损失的情况下对其进行优化,尽管仍会进行排序。如果查询包含GROUP BY,但您希望避免对结果进行排序的开销,则可以通过指定ORDER by NULL来禁止排序。例如:
https://stackoverflow.com/questions/17143784
复制相似问题