Aracılığıyla paylaş


Etkili Boole değeri (XQuery)

Etkili Boole değerleri şunlardır:

  • İşlenen boş bir sıra veya Boole false ise yanlış.

  • Aksi takdirde, değer true olur.

Tek bir Boolean değeri, bir düğüm sırası veya boş bir sıra döndüren ifadeler için etkili Boole değeri hesaplanabilir.Aşağıdaki türde ifadeler işlendiğinde Boole değerini örtük olarak hesaplanır dikkat edin:

Etkili bir Boole değer örneği aşağıda verilmektedir.Zaman if ifade işlenir, koşulun etkili Boole değeri belirlenir.Çünkü /a[1] bir boş sırası döndürür etkili Boole değeri false. olduğuSonuç xml olarak bir metin düğümü (false) ile verilir.

value is false
DECLARE @x XML
SET @x = '<b/>'
SELECT @x.query('if (/a[1]) then "true" else "false"')
go

Boş olmayan bir sıra ifade verdiği için aşağıdaki örnekte etkili Boole değeri geçerlidir.

DECLARE @x XML
SET @x = '<a/>'
SELECT @x.query('if (/a[1]) then "true" else "false"')
go

Ne zaman sorgulama yazılı xml sütunları veya değişkenleri, Boole türü. düğümü olabilirThe data() in this case returns a Boolean value.Sorgu ifade bir Boolean true değerini döndürürse, etkili Boole değeri sonraki örnekte gösterildiği gibi doğrudur.Aşağıdakileri de örnekte gösterilmiştir:

  • Bir xml şeması koleksiyon oluşturulur.Öğe <b> , koleksiyon olan Boole türü.

  • Bir yazılı xml değişkeni oluşturulur ve sorgulanan.

  • ifade data(/b[1]) döndüren bir Boole true değeri.Bu nedenle, etkili Boole değeri durum doğrudur.

  • ifade data(/b[2]) döndüren bir Boole false değeri.Bu nedenle, etkili Boole değeri durum false olur.

CREATE XML SCHEMA COLLECTION SC AS '
<schema xmlns="http://www.w3.org/2001/XMLSchema">
      <element name="s" type="string"/>
      <element name="b" type="boolean"/>
</schema>'
go
DECLARE @x XML(SC)
SET @x = '<b>true</b><b>false</b>'
SELECT @x.query('if (data(/b[1])) then "true" else "false"')
SELECT @x.query('if (data(/b[2])) then "true" else "false"')
go

Ayrıca bkz.

Kavramlar

Diğer Kaynaklar