Aracılığıyla paylaş


NULL ve BİlİNMEYEN (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiAzure Synapse AnalyticsAnaliz Platformu Sistemi (PDW)Microsoft Fabric'teki SQL analiz uç noktasıMicrosoft Fabric'teki ambarMicrosoft Fabric'teki SQL veritabanı

NULL değerin bilinmediğini gösterir. Null değer, boş veya sıfır değerinden farklıdır. İki null değer eşit değildir. İki null değer arasındaki veya null değer ile başka bir değer arasındaki karşılaştırmalar, her NULL birinin değeri bilinmediğinden bilinmiyor sonucunu verir.

Null değerler genellikle bilinmeyen, uygulanamaz veya daha sonra eklenecek verileri gösterir. Örneğin müşterinin ikinci adının baş harfi, müşterinin sipariş verme zamanında bilinmeyebilir.

Consider:

  • Sorgudaki null değerleri test etmek için veya IS NULL yan tümcesini IS NOT NULL kullanınWHERE.

  • Bir veya NULL deyiminde açıkça belirterek INSERTUPDATE veya bir sütunu deyiminin INSERT dışında bırakarak bir sütuna null değerler ekleyebilirsiniz.

  • Null değerler, tablodaki bir satırı tablodaki başka bir satırdan ayırt etmek için gereken bilgiler olarak kullanılamaz. Örnek olarak birincil anahtarlar veya dağıtım anahtarları gibi satırları dağıtmak için kullanılan bilgiler verilebilir.

Remarks

Verilerde null değerler mevcut olduğunda, mantıksal ve karşılaştırma işleçleri yalnızca UNKNOWN veya TRUEyerine üçüncü bir sonucu FALSE döndürebilir. Bu üç değerli mantık gereksinimi birçok uygulama hatasının kaynağıdır. İşlecin sonucu ifadeye bağlı olmadığı sürece, dönüş UNKNOWNiçeren UNKNOWN boole ifadesindeki UNKNOWN mantıksal işleçler. Bu tablolar bu davranışa örnekler sağlar.

Aşağıdaki tabloda, bir ifadenin döndürdüğü ANDiki Boole ifadesine bir UNKNOWN işleç uygulamanın sonuçları gösterilmektedir.

İfade 1 İfade 2 Result
TRUE UNKNOWN UNKNOWN
UNKNOWN UNKNOWN UNKNOWN
FALSE UNKNOWN FALSE

Aşağıdaki tabloda, bir ifadenin döndürdüğü ORiki Boole ifadesine bir UNKNOWN işleç uygulamanın sonuçları gösterilmektedir.

İfade 1 İfade 2 Result
TRUE UNKNOWN TRUE
UNKNOWN UNKNOWN UNKNOWN
FALSE UNKNOWN UNKNOWN