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

SQL untuk mengembalikan daftar bidang yang berisi data non-NULL

Jadi, tujuan Anda adalah mendapatkan daftar nama kolom sedemikian rupa sehingga semuanya memiliki setidaknya satu nilai non-NULL di salah satu baris, bukan? Jika ya, lihat di bawah...

Anda tidak dapat membuat parameter nama kolom dalam kueri SQL, jadi Anda harus membuat teks SQL secara dinamis, dalam bahasa klien yang Anda pilih. Algoritme akan terlihat seperti ini:

  1. Anda harus mengetahui daftar nama kolom terlebih dahulu. Ada cara untuk mengotomatiskan pengambilan daftar ini di PostgreSQL , MySQL dan sebagian besar basis data lainnya.
  2. Ulangi daftar ini dan untuk setiap column_name membangun teks SQL secara dinamis seperti:SELECT column_name FROM YOUR_TABLE WHERE column_name IS NOT NULL LIMIT 1 (lihat MySQL LIMIT dan PostgreSQL LIMIT ).
  3. Jalankan kueri di atas dan ambil hasilnya. Jika ada baris di dalamnya, tambahkan column_name ke daftar hasil .
  4. Teruskan iterasi selagi ada elemen dalam daftar nama kolom.

Daftar yang dihasilkan sekarang berisi kolom dengan setidaknya satu nilai non-NULL.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Perbarui formulir menggunakan Ajax, PHP, MYSQL

  2. Waktu Rata-Rata untuk Membalas Pesan

  3. Hibernate Kriteria Query untuk mendapatkan kolom tertentu

  4. Tetapkan nilai AUTO_INCREMENT melalui variabel di MySql

  5. Simpan waktu antar catatan