1

我有 2 个 sql 表,第一个表称为已处理

relatedorders (type in nvarchar)
132,112,144,155
116,113
11,44,15,16

第二个表称为订单,看起来像

orderid (type int)
132
112
155
116

我想从订单表中选择 orderid,其中 orderid 存在于已处理表的相关订单中

我试过类似的东西

SELECT * 
FROM orders 
WHERE EXISTS(SELECT relatedorders 
             from processed 
             where orders.orderid  like %relatedorders %)

但它似乎没有按预期工作,我做错了什么?

4

1 回答 1

3

对此进行建模的正确方法是通过连接表建立一对多关系。添加另一个表,可能称为ProcessedRelatedOrders包含订单的 ID 和相关订单的 ID,每个关系一行。你可能会想要。使用两列作为主键。主键上的索引应该允许快速查找与已处理订单的连接。

于 2013-07-14T23:17:23.563 回答