Mohammad_Mnt
چهارشنبه 10 مرداد 1386, 12:56 عصر
من نتونستم عملگر XOR منطقی ( Boolean ) را توی MSSQL 2005 پیدا کنم. چه راهی برای شبیه سازی این عملگر وجو داره ؟
در ضمن، چون کوئری که دارم خیلی طولانیه، نمی شه از چیزی مثل
(Column1 = 1 AND Column2 <> 1)
OR (Column1 <> 1 AND Column2 = 1) استفاده کنم.
اون بخشی از کوئری که به XOR احتیاج داره :
(( ( @lOnlyBottom = 1 ) or (tCoding.type between @lTypeFrom and @lTypeTo)) XOR
( ( @lOnlyBottom = 1 ) and
(tDocumentItem.coding in
( SELECT distinct cd1.code FROM tCoding cd1 inner join tcoding cd2
on (cd1.code not in ( select Level1 from tcoding )) and
(cd1.code not in ( select Level2 from tcoding )) ) )
))
پ.ن : جالب اینجاست که کد زیر هم کامپایل نمی شه :
Convert ( (1=1) as bit )
در ضمن، چون کوئری که دارم خیلی طولانیه، نمی شه از چیزی مثل
(Column1 = 1 AND Column2 <> 1)
OR (Column1 <> 1 AND Column2 = 1) استفاده کنم.
اون بخشی از کوئری که به XOR احتیاج داره :
(( ( @lOnlyBottom = 1 ) or (tCoding.type between @lTypeFrom and @lTypeTo)) XOR
( ( @lOnlyBottom = 1 ) and
(tDocumentItem.coding in
( SELECT distinct cd1.code FROM tCoding cd1 inner join tcoding cd2
on (cd1.code not in ( select Level1 from tcoding )) and
(cd1.code not in ( select Level2 from tcoding )) ) )
))
پ.ن : جالب اینجاست که کد زیر هم کامپایل نمی شه :
Convert ( (1=1) as bit )