Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

JIKA TIDAK ADA TIDAK BEKERJA

MySQL tidak mengizinkan if logika, kecuali Anda berada di blok pemrograman (prosedur tersimpan, pemicu, atau fungsi).

Untungnya, Anda dapat melakukan hal yang sama dengan WHERE logika:

INSERT INTO user 
    SELECT 'Rutvij', 'python', 25
    FROM DUAL
    WHERE NOT EXISTS (SELECT 1 FROM user WHERE name = 'Rutvij' AND lang = 'python')
    UNION ALL
    SELECT 'Kanzaria', 'python', 25
    FROM DUAL
    WHERE EXISTS (SELECT 1 FROM user WHERE name = 'Rutvij' AND lang = 'python');

MySQL harus memproses SELECT sebelum INSERT , jadi hanya satu baris yang harus dimasukkan.

Atau, Anda dapat melakukan ini sebagai dua INSERT s tetapi dalam urutan yang berlawanan:

INSERT INTO user 
    SELECT 'Kanzaria', 'python', 25
    FROM DUAL
    WHERE EXISTS (SELECT 1 FROM user WHERE name = 'Rutvij' AND lang = 'python');

INSERT INTO user 
    SELECT 'Rutvij', 'python', 25
    FROM DUAL
    WHERE NOT EXISTS (SELECT 1 FROM user WHERE name = 'Rutvij' AND lang = 'python');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. $wpdb->masukkan tidak berfungsi. Tidak Ada Pesan Kesalahan

  2. Cara meneruskan parameter dinamis ke tampilan MySQL

  3. Arsitektur database untuk jutaan baris baru per hari

  4. mengunggah pdf menggunakan volley tetapi mendapat file nol di folder server

  5. Mysql - perbarui kolom tabel dari kolom lain berdasarkan pesanan