php - Apa yang salah dengan pernyataan sql ini?
某草草
某草草 2017-06-05 11:09:23
0
4
695
DELETE from li_make_code  where user_id in 
(    
    select user_id from li_make_code a 
        where 
            not exists (select 1 from li_user b  where b.id=a.user_id)
) ;
[Err] 1093 - You can't specify target table 'li_make_code' for update in FROM clause

Bagaimana ayat ini harus diubah dengan sewajarnya

某草草
某草草

membalas semua(4)
phpcn_u1582

mysql中Anda tidak boleh menentukan jadual sasaran untuk kemas kini dalam FROM clause错误

过去多啦不再A梦

Anda mahu memadamkan item yang tidak ditemui dalam jadual user_idli_user Mengapa tidak gunakan sahaja:

delete from li_make_code where user_id not in 
    (select distinct id from li_user)
習慣沉默

Operasi subkueri dan pemadaman anda berada pada jadual yang sama Anda tidak boleh bertanya dan mengemas kini jadual yang sama pada masa yang sama.
Tukar sahaja untuk menyertai mod.

PHPzhong

PADAM dari li_make_code tempat user_id masuk ( PILIH user_id dari
(pilih user_id dari li_make_code a yang tidak ada(pilih 1 dari li_user b di mana b.id=a.user_id)) bb)

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan