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
526
<p>Saya mempunyai lajur C1 yang nilainya boleh menjadi 'nilai', 'kosong' atau 'T/A'. </p> <pre class="brush:php;toolbar:false;">| ------- | | |epal|</pre> <p>Saya mahu memilih lajur C1 dengan cara yang menukar nilai nol dan N/A kepada NULL, menggunakan NULLIF. </p> <pre class="brush:php;toolbar:false;">| ------- |NULL | |NULL | |epal|</pre> <p>Kami boleh menggunakan <code>NULLIF(C1, '')</code>, yang mengembalikan NULL jika nilai lajur kosong. </p> <p>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)</p> <p>Serupa dengan <kod>NULLIF(C1, '' ATAU 'T/A')</code></p> <p>Terima kasih terlebih dahulu. </p>
P粉310754094
P粉310754094

membalas semua(2)
P粉253800312

Gunakan caseungkapan:

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

Anda boleh melakukan ini menggunakan fungsi nested NULLIF():

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

Lihat Demo.

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!