小编App*_*800的帖子

根据此表和另一个表中的行值删除一个表中的行

似乎有这样的一些问题,但没有一个完全相同,所以这里是:

我需要找到一种方法来删除一个表中的行,其中另一个表中有一行,其中两个字段等于原始表中的两个字段.(在下面的例子中,这将是:我需要找到一种方法来删除@All中包含@ All.Stall = @ Grouped.Stall和@ All.Fruit = @ Grouped.Fruit的行

例如:

@All:要删除行的表:

Stall       Fruit
-------------------
John        Apples
John        Pears
John        Pineapple
Mary        Apples
Mary        Apples
Mary        Pears
Mary        Pineapple
Run Code Online (Sandbox Code Playgroud)

@Grouped:要从中删除行的表:

Stall       Fruit
-------------------
Mary        Apples
Run Code Online (Sandbox Code Playgroud)

结果表应如下所示:

Stall       Fruit
-------------------
John        Apples
John        Pears
John        Pineapple
Mary        Pears
Mary        Pineapple
Run Code Online (Sandbox Code Playgroud)

请注意,这两行包含:Mary | 苹果不见了.

对于我的生活,我无法弄清楚如何做到这一点,并且只能让它删除包含苹果的所有三行而不留下一个John 苹果.

以下是创建两个临时表的查询,如果有人能够提供帮助:

@All - 要删除行的表

@Grouped - 包含要从@All中删除的字段的表

DECLARE @All TABLE(
    Stall varchar(10),
    Fruit varchar(10),
    StallFruitID int
)

DECLARE @Grouped TABLE(
    Stall varchar(10), …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-delete

7
推荐指数
1
解决办法
9297
查看次数

标签 统计

sql ×1

sql-delete ×1

sql-server ×1

t-sql ×1