---
title: "Ta bort från Child om Parent inte längre finns"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/169428-ta-bort-från-child-om-parent-inte-längre-finns"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Dino"
published: "2008-02-28T12:09:14.000Z"
updated: "2008-02-28T12:35:46.000Z"
replies: 4
views: 404
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/169428-ta-bort-från-child-om-parent-inte-längre-finns"
---

# Ta bort från Child om Parent inte längre finns

## #1 — Dino, 2008-02-28T12:09Z

SqlServer 2005

Ibland kan det bli så som nedan att Table1 rader tas bort, men Table2 rader bli kvar. Skulle då vilja ta bort de Table2 rader vars Table2.Table1Id inte längre har en relation till Table1.

Hur skulle detta går till?

```
CREATE TABLE [Table1] (
	[Id] [int] IDENTITY (1, 1) NOT FOR REPLICATION  NOT NULL ,
	[Quantity] [int] NOT NULL ,
	CONSTRAINT [PK_Table1] PRIMARY KEY  CLUSTERED 
	(
		[Id]
	)  ON [PRIMARY] 
) ON [PRIMARY]
GO

CREATE TABLE [Table2] (
	[Id] [int] IDENTITY (1, 1) NOT FOR REPLICATION  NOT NULL ,
	[Table1Id] [int] NOT NULL ,
	[QuantityMinusValue] [int] NOT NULL ,
	CONSTRAINT [PK_Table2] PRIMARY KEY  CLUSTERED 
	(
		[Id]
	)  ON [PRIMARY] 
) ON [PRIMARY]
GO

INSERT INTO dbo.[Table1](Quantity) VALUES(9); //Id = 1

INSERT INTO dbo.[Table2](Table1Id, QuantityMinusValue) VALUES(1, 13);//Table1Id = 1
INSERT INTO dbo.[Table2](Table1Id, QuantityMinusValue) VALUES(18, 55);
```

Permalänk: https://www.webforum.nu/p/169428

## #2 — spango, 2008-02-28T12:18Z

Typ 
*DELETE FROM Table2 t2 WHERE NOT EXISTS (SELECT t1.Id FROM Table1 t1 WHERE t1.Id = t2.Table1Id)*

Permalänk: https://www.webforum.nu/p/2085382

## #3 — Dino, 2008-02-28T12:27Z

Det gick inte. Kan inte ha t2 i "DELETE FROM Table2 t2... ".

Permalänk: https://www.webforum.nu/p/2085387

## #4 — Peter S, 2008-02-28T12:33Z

```
DELETE Table2 FROM Table2 t2 WHERE NOT EXISTS (SELECT t1.Id FROM Table1 t1 WHERE t1.Id = t2.Table1Id)
```

Permalänk: https://www.webforum.nu/p/2085389

## #5 — Dino, 2008-02-28T12:35Z

Det gick bättre. Tackar så mycket.

Permalänk: https://www.webforum.nu/p/2085390

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/169428-ta-bort-från-child-om-parent-inte-längre-finns
