2017-04-04 20 views
0

別のテーブルのレコードに基づいてあるテーブルのレコードを削除しようとしています。私は内部結合を使用しています。私が使用しているコードは次のとおりです。内部結合があるテーブルからレコードを削除する

delete * from assets_l a, laptop_tracker b 
where a.serialno=b.serialno; 

私はノートパソコンのトラッカーテーブル内のレコードに一致するシリアル番号を持つassets_lテーブル内のすべてのレコードを削除しようとしています。いくつか助けてください?

+0

あなたが直面している問題は何ですか? –

+0

これは無効な(標準の)SQLです。どのDBMSを使用していますか? –

+0

どのdbmsを使用していますか?この声明は製品特有のものです。 – jarlh

答えて

1

あなたは参加を提案しましたか? laptop_trackerの一致が存在するassets_lから削除したいとします。言い換えれば

delete from assets_l 
where exists (select * from laptop_tracker lt where lt.serialno = assets_l.serialno); 

:あなたは、ほぼSQLに単語のためにこの言葉を翻訳することができ、シリアル番号がlaptop_trackerでもあるところassets_lから削除します。私は2番目の文のために行くだろう

delete from assets_l 
where serialno in (select serialno from laptop_tracker); 

IN句を使用します)。これは標準SQLであり、すべてのRDBMSで動作するはずです。

+0

ありがとうございます。魅力的な作品 –