it-swarm-tr.com

DB2 SQL'de IsNull işlevi?

DB2 için isnull işlevine eşdeğer bir performans var mı?

Ürünlerimizin bazılarının dahili olduğunu hayal edin, bu yüzden isimleri yoktur:

Select product.id, isnull(product.name, "Internal) 
From product

Geri dönüş olabilir:

1 Socks 
2 Shoes 
3 Internal 
4 Pants
16
Dave

Değeri ne olursa olsun, COALESCE benzer, ancak 

IFNULL(expr1, default)

dB2'de aradığınız tam eşleşmedir. 

COALESCE, ilk NON NULL ifadesini döndürerek birden fazla argümana izin verirken, IFNULL yalnızca ifadeye ve varsayılana izin verir.

Böylece

SELECT product.ID, IFNULL(product.Name, "Internal") AS ProductName
FROM Product

Aradığınızı ve önceki cevapların yanı sıra, sadece eksiksizlik için aradığınızı verir.

35
MadMurf

DB2'ye aşina değilim, ama COALESCE'i denediniz mi?

yani:


SELECT Product.ID, COALESCE(product.Name, "Internal") AS ProductName
FROM Product
3
Chris Shaffer

DB2'de bir NVL işlevi vardır (alan, boşsa değer).

Örnek:

KİMLİĞİ SEÇ, NVL (NAME, "Dahili) ADI OLARAK, NVL (FİYAT, 0) UR İLE ÜRÜNDEN BAZI FİYAT;

2
Md. Kamruzzaman
Select Product.ID, VALUE(product.Name, "Internal") AS ProductName from Product
2
Jnn

Sanırım COALESCE işlevi isnull işlevine kısmen benziyor, ancak deneyin.

Neden uygulama programları aracılığıyla boş işlem işlevlerine girmiyorsunuz, bu daha iyi bir alternatif. 

0
venkatram

umarım bu dışarıdaki birine yardım edebilir

  SELECT 
.... FROM XXX XX
WHERE
....
AND(
       param1 IS NULL
       OR XX.param1 = param1
       )
0
turnmoil

COALESCE işlevi aynı ISNULL işlevi Not. COALESCE işlevini, null olduğunu kontrol ettiğiniz aynı veri tipi sütunla kullanmanız gerekir.

0
Fuangwith S.