我正在尝试对按项目ID链接的两个表执行连接操作。但是,它们的问题在于它们的列名具有以下相同的名称:
items
(ID, **Quantity**, etc. /*[nothing in etc. is shared by status' columns]*/)
status
(ID, **Quantity**, etc. /*[nothing in etc. is shared by items' columns]*/)
我想从这些表中获取所有记录并加入它们,但我不知道SQL查询的样子。我知道它会像:
SELECT *
FROM items
LEFT OUTER JOIN status
ON items.ID = status.ID
我知道我需要两个数量列的别名(我知道该怎么做),但是查询的后半部分在哪里适合?
答案 0 :(得分:1)
通常,我建议避免SELECT *
次查询。只需选择您需要的特定列,如果有重复的列名,您可以轻松为它们分配别名。
SELECT i.col1, i.col2, i.quantity AS item_quantity, s.col3, s.col4, s.quantity AS status_quantity
FROM items AS i
JOIN status AS s ON i.ID = s.ID
但是如果你真的需要选择所有列,你可以在Marc B的答案中使用该解决方案。