假设我有一个名为box,item和box_contents的数据库,我希望得到box_content表中包含的任何项目(所有项目,但丢弃不在box_contents表中的项目)。什么是正确的sqllite语法?
答案 0 :(得分:1)
取决于您的架构,也就是说,“box_content”表如何表示它“包含”某个项目。例如,如果通过使用“ItemId”列对“item”表的主键“Id”进行外部引用来实现此目的,那么
SELECT item.*
FROM item
JOIN box_content ON (box_content.ItemId = item.Id)
可以正常工作(假设你的意思正是你所说的,即你想要在“box_content”表中包含任何位置的项目,并且你提到另一个表“box”实际上是完全无关紧要)。
但是,如果您的架构完全不同(或者您实际想要做的与您所说的完全不同),那么当然所需的SQL也是如此。如何编辑您的Q以显示CREATE TABLE
语句和(如果需要)任何评论...?
答案 1 :(得分:0)
您需要在两个表之间执行所谓的join。
你有类似的东西:
SELECT (item_columns)
FROM item i JOIN box_contents bc ON i.item_id = bc.item_id