我有一個名爲person的表(其中包含用戶的登錄ID)。我正在測試我的應用程序並創建了多個測試用戶。所以現在這個表有很多測試用戶和一些普通用戶。一次從表中刪除多行
我想知道如何刪除所有測試用戶?
使用DELETE login FROM person where login = 'test_user' ;
逐個刪除所有用戶將需要很長時間。
PS:測試用戶的名稱不包含測試:/它們只是隨機名稱。
我有一個名爲person的表(其中包含用戶的登錄ID)。我正在測試我的應用程序並創建了多個測試用戶。所以現在這個表有很多測試用戶和一些普通用戶。一次從表中刪除多行
我想知道如何刪除所有測試用戶?
使用DELETE login FROM person where login = 'test_user' ;
逐個刪除所有用戶將需要很長時間。
PS:測試用戶的名稱不包含測試:/它們只是隨機名稱。
所有用戶你有所有測試用戶的列表?
如果是這樣,你可以像
DELETE FROM person WHERE login IN ('user1', 'user2', 'user3', ...);
編輯
在響應查詢
本人有效用戶的列表,我想刪除其餘。 - Chankey Pathak
使用
DELETE FROM person WHERE login NOT IN ('user1', 'user2', 'user3', ...);
我有一個有效的用戶列表,我想刪除其餘的。 – 2012-07-13 07:36:22
@ChankeyPathak,那麼你可以使用'NOT IN(listOfValidUsers)' – 2012-07-13 07:37:26
@ZaneBien:謝謝:) – 2012-07-13 07:37:58
DELETE FROM person where login like '%test%'
這將刪除,他們的名字中含有test
測試用戶的名字不包含測試:/他們只是隨機的名字。 – 2012-07-13 07:07:59
你怎麼知道誰是測試用戶? – 2012-07-13 07:08:40
這個答案不會起作用 – whytheq 2012-07-13 07:26:52
你可以採取白名單的方法:如果你有你想保留用戶的列表,但要刪除不在行
這有效的列表,你可以使用:
DELETE FROM person WHERE login NOT IN (<listOfValid>)
如果您有存儲在一個表中的所有有效用戶,你可以這樣做:
DELETE a FROM person a
LEFT JOIN validpersons b ON a.name = b.name
WHERE b.name IS NULL
您將如何識別普通用戶和測試用戶? – Madhivanan 2012-07-13 07:08:56
Pranav的回答有什麼問題?也許你應該將測試用戶的登錄記錄在表格中;那麼它很容易被刪除 – whytheq 2012-07-13 07:28:35