2017-02-01 5 views
0

Zum Beispiel habe ich zwei Tabellen, eine davon habe ich die Produktbeschreibung, in einer anderen habe ich Daten wie "Preis", "Datum der Registrierung", unter anderem. Ich möchte wissen, wie ich die Beschreibung löschen kann, die ID in der Produkttabelle nicht hat.Wie zwei Tabellen in SQL zu vergleichen?

+0

Bearbeiten Sie Ihre Frage und bieten Beispieldaten und gewünschte Ergebnisse. Kennzeichnen Sie außerdem Ihre Frage mit der von Ihnen verwendeten Datenbank. –

+0

Bitte überprüfen Sie http://StackOverflow.com/Help/Mcve, um zu sehen, wie Sie ein minimales, komplettes und überprüfbares Beispiel erstellen können – pringi

+0

In Ordnung, Danke Gordon! –

Antwort

1

Etwas wie:

delete from ProductDescription 
where productId not in (
    select productId from Product 
); 
+0

Es hat funktioniert, danke! Wie reklamiere ich? Ich bin neu hier ... –

+0

@Vinicius Rosa: Es sollte nicht einmal möglich sein, dass ein Produktbeschreibungseintrag existiert, wenn das Produkt nicht existiert. Offensichtlich fehlen in Ihrer Datenbank Fremdschlüsseleinschränkungen. –

+0

Es gibt einen etwas versteckten Haken unter den Auf- und Abwärtspfeilen links von meinen Antworten, kreuzen Sie an, um eine Antwort zu akzeptieren. Bedenken Sie auch, dass Sie eine Antwort finden, die Sie als gut/hilfreich empfinden. – Tobb

0

Betrachten wir, wenn wir zwei Tabellen haben

Product table 
    Id-----Description 
--------------------------------- 
    1------It is abcd 
    2------It is Efg 
    3------It is Xyz 
    Product table 
    Id------Name------price---date 
----------------------- 
    1-------Abcd------10-----1/1/2007 
    2-------Efg------20-----2/2/2007 

Wir brauchen decription 'Seine xyz' zu löschen, die in der Produkttabelle haben id doesnot. So verwenden Sie diese Abfrage

delete from Description 
where Id not in (
    select Id from Product 
); 
+0

Es funktioniert, vielen Dank, Ranju: D –

Verwandte Themen