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
2023-08-25 13:26:01
<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>
Gunakan
case
ungkapan:Anda boleh melakukan ini menggunakan fungsi nested
NULLIF()
:Lihat Demo.