Dalam SQL, cara untuk menetapkan nilai lajur kepada null tanpa menggunakan pernyataan CASE, menggunakan fungsi NULLIF bersarang apabila syarat A atau syarat B dipenuhi
P粉310754094
P粉310754094 2023-08-25 13:26:01
0
2
445

Saya mempunyai lajur C1 yang nilainya boleh menjadi 'nilai', 'kosong' atau 'T/A'.

| ------- | | |epal|

Saya mahu memilih lajur C1 dengan cara yang menukar nilai nol dan N/A kepada NULL, menggunakan NULLIF.

| ------- |NULL | |NULL | |epal|

Kami boleh menggunakan NULLIF(C1, ''), yang mengembalikan NULL jika nilai lajur kosong.

Kami juga boleh menggunakan CASE untuk mencapai kedua-dua situasi ini, tetapi saya ingin tahu sama ada terdapat cara untuk menggunakan NULLIF untuk mencapainya, dan jika ya, bagaimana untuk mencapainya? (Atau kaedah lain selain CASE)

Serupa dengan NULLIF(C1, '' ATAU 'T/A')

Terima kasih terlebih dahulu.

P粉310754094
P粉310754094

membalas semua (2)
P粉253800312

Gunakancaseungkapan:

(case when c1 not in ('', 'N/A') then c1 end)
    P粉925239921

    Anda boleh melakukan ini menggunakan fungsi nestedNULLIF():

    NULLIF(NULLIF(c1, ''), 'N/A')

    LihatDemo.

      Muat turun terkini
      Lagi>
      kesan web
      Kod sumber laman web
      Bahan laman web
      Templat hujung hadapan
      Tentang kita Penafian Sitemap
      Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!