2016-07-04 19 views
0
mysql> select *from add_member; 
+-----------+-------------+--------------+-------------------+ 
| member_ID | member_name | member_phone | member_department | 
+-----------+-------------+--------------+-------------------+ 
|  12345 | kishore  | 89482934  | IT738    | 
|  12347 | ram   | 783892389 | IT721829   | 
| 12346 | vardhan  | 902112  | TI5738   | 

mysql> select *from ownbook; 


    +--------+----------+-----------+-------------+------------+----------- 

    | BookID | Bookname | member_ID | member_name | from  | to   | 
    +--------+----------+-----------+-------------+------------+------------+ 
    | 1006 | physics |  12346 | ram   | 2016-07-05 | 2016-07-20 | 
    +--------+----------+-----------+-------------+------------+------------+ 
1 row in set (0.00 sec) 
+0

我想能夠刪除ID-12345,12347的數據,但是當我嘗試刪除12346時,sholud不能被刪除becoz它在另一個表 –

+0

我認爲你有外鍵扭曲這兩個表。刪除之前從自己的記錄與該ID – splash58

回答

1

你可以嘗試這樣的:

delete from add_member where member_ID not exists(select member_ID from ownbook) 

,或者您可以使用NOT IN像

delete from add_member where member_ID not in(select member_ID from ownbook) 

如果它是具體數據,然後簡單地做:

delete from add_member 
where member_ID not in(select member_ID from ownbook where member_id in(12345,12347)) 
+0

,但我想刪除特定數據2345或2347但不是2346 becoz它是在另一個表 –

+0

它刪除兩個數據...我想刪除一個數據 –

+0

我想刪除12345 ID只 –

0

如果你wan T刪除一個特定的ID,當且僅當它不應該在第二個表在那裏,你可以這樣做:

delete from add_member where member_ID='SEPCIFIC_ID_YOU_WANT' and member_ID not in(select member_ID from ownbook)

工作100%測試。

相關問題