SQL映射另一个表中的项目代码

时间:2015-12-28 18:57:11

标签: sql

我有两张桌子如下所示:

ORDER enter image description here

ITEM_DESCRIPTION

enter image description here

我想要做的是写一个查询,我可以在其中提取票号和物品,但让物品显示它实际上是什么而不是物品代码。到目前为止,我有这个:

SELECT 
    TICKET_NUMBER,
    ITEM
FROM ORDER

任何帮助都会很棒!

1 个答案:

答案 0 :(得分:1)

SELECT 
    [ORDER].TICKET_NUMBER,
    ITEM_DESCRIPTION.ITEM
FROM [ORDER] 
INNER JOIN ITEM DESCRIPTION ON (Order.ITEM=ITEM_DESCRIPTION.CODE)

其他提示:

  • " ORDER"对于表名称而言,它不太理想,因为它是一个SQL保留字。

    • 您的ITEM_DESCRIPTION表中的ID和代码似乎是多余的。抛弃ID并将CODE字段作为ITEM_DESCRIPTION的主键。

    • ITEM_DESCRIPTION表可能应该命名为" ITEM"因为你不可避免地想要添加更多的列来描述项目。

    • 名字和姓氏不应该在您的订单表中。您应该创建一个单独的Customers表,将名称列移动到新表,然后使用客户ID链接到它。

  • 正如斯坦斯在评论中所说。如果你要做很多SQL,你真的需要学习JOIN操作的语法。它们对理解SQL非常重要。