MariaDB: Isu dengan pemadaman SQL menggunakan klausa wujud
P粉811329034
P粉811329034 2023-08-30 23:16:01
0
1
446
<p>Saya menjalankan pilihan ini dalam MariaDB dan ia berfungsi seperti yang diharapkan, ia hanya pilihan dengan <kod>wujud</code>: </p> <pre class="brush:php;toolbar:false;">pilih * daripada pred_loan_defaults d di mana wujud (pilih 1 daripada pred_loan_defaults d2 di mana d.exec_id = d2.exec_id dan d.loan_identifier = d2.loan_identifier dan d2.status_default = 1 dan d.prediction_date > pesanan mengikut loan_identifier, prediction_date</pre> <p>Sekarang, saya cuba memadamkan baris yang dipilih, jadi saya menyesuaikan kenyataan: </p> <pre class="brush:php;toolbar:false;">padam daripada pred_loan_defaults d di mana wujud (pilih * daripada pred_loan_defaults d2 di mana d.exec_id = d2.exec_id dan d.loan_identifier = d2.loan_identifier dan d2.status_default = 1 dan d.prediction_date > <p>Tetapi saya mendapat ralat:</p> <blockquote> <p>SQL Error [1064] [42000]: (conn=6) Terdapat ralat dalam SQL anda Sintaks; semak manual untuk pelayan MariaDB anda Versi menggunakan sintaks yang betul berhampiran 'd</p> </blockquote> <p><kod>padam</kod> </p>
P粉811329034
P粉811329034

membalas semua(1)
P粉752812853

Apabila memadamkan satu jadual, alias tidak boleh digunakan selepas nama jadual.

Anda perlu menggunakan JOIN而不是WHERE EXISTS.

delete d
FROM pred_loan_defaults AS d
JOIN prod_loan_defaults AS d2
    ON d.exec_id = d2.exec_id 
        AND d.loan_identifier = d2.loan_identifier 
        AND d.prediction_date > d2.prediction_date
WHERE d2.default_status = 1
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan