Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 如果此链接可以回答问题,最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能无效。-@ChrisCatignani,根据您的建议添加了解释部分。谢谢!感谢您将链接替换为内容。如果你现在再次添加链接,并提到这是你自己的内容,_Sql Server - Fatal编程技术网

Sql server 如果此链接可以回答问题,最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能无效。-@ChrisCatignani,根据您的建议添加了解释部分。谢谢!感谢您将链接替换为内容。如果你现在再次添加链接,并提到这是你自己的内容,

Sql server 如果此链接可以回答问题,最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能无效。-@ChrisCatignani,根据您的建议添加了解释部分。谢谢!感谢您将链接替换为内容。如果你现在再次添加链接,并提到这是你自己的内容,,sql-server,Sql Server,如果此链接可以回答问题,最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能无效。-@ChrisCatignani,根据您的建议添加了解释部分。谢谢!感谢您将链接替换为内容。如果你现在再次添加链接,并提到这是你自己的内容,你复制它是好的。(当然,由于您的用户,这看起来很明显,只是为了完整性)。 select s.*, d.* from B20Dept d cross apply (select distinct YEAR(s.DocDate) Y, MO


如果此链接可以回答问题,最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能无效。-@ChrisCatignani,根据您的建议添加了解释部分。谢谢!感谢您将链接替换为内容。如果你现在再次添加链接,并提到这是你自己的内容,你复制它是好的。(当然,由于您的用户,这看起来很明显,只是为了完整性)。
select s.*, d.*
from B20Dept d
    cross apply (select distinct YEAR(s.DocDate) Y, MONTH(s.DocDate) THANG from B30AccDocSales s) s
    left join (
        select YEAR(s.DocDate) Y, MONTH(s.DocDate) THANG, s.DeptCode
        from B30AccDocSales s
        group by YEAR(s.DocDate), MONTH(s.DocDate), s.DeptCode) m on m.Y = s.Y and m.THANG = s.THANG and m.DeptCode = d.Code
where m.DeptCode is null 
order by s.Y, s.THANG
declare @Year int = 2014
select s.*, d.*
from B20Dept d
    cross apply (values (1), (2), (3), (4), (5), (6), (7), (8), (9), (10), (11), (12)) s (THANG)
    left join (
        select MONTH(s.DocDate) THANG, s.DeptCode
        from B30AccDocSales s
        where YEAR(s.DocDate) = @Year
        group by MONTH(s.DocDate), s.DeptCode) m on m.THANG = s.THANG and m.DeptCode = d.Code
where m.DeptCode is null
union 
select MONTH(s.DocDate) THANG, '', ''
from B30AccDocSales s
where YEAR(s.DocDate) = @Year
group by MONTH(s.DocDate)
having COUNT(distinct s.DeptCode) = (select count(1) from B20Dept)
order by s.THANG
--METHOD 1 (Using NOT EXISTS)
SELECT S1.NUM AS [NOT EXISTS] 
FROM #SampleTable1 S1 
WHERE NOT EXISTS (SELECT NUM FROM #SampleTable2 S2 WHERE S2.NUM=S1.NUM);
GO
--METHOD 2 (Using EXCEPT)
SELECT NUM AS [EXCEPT] 
FROM #SampleTable1 
EXCEPT
SELECT NUM FROM #SampleTable2;
GO
--METHOD 3 (Using = ANY)
SELECT S1.NUM AS [= ANY]
FROM #SampleTable1 S1
WHERE NOT (S1.NUM = ANY
(
SELECT S2.NUM
FROM #SampleTable2 S2
) );
--METHOD 4 (Using OUTER APPLY and avoiding JOIN CONDITION)
SELECT S1.NUM AS [OUTER APPLY] 
FROM #SampleTable1 S1 
OUTER APPLY (
SELECT NUM FROM #SampleTable2 S2 WHERE S2.NUM=S1.NUM
) T 
WHERE T.NUM IS NULL;
GO
--METHOD 5 (Using LEFT JOIN/IS NULL)
SELECT S1.NUM AS [LEFT JOIN] 
FROM #SampleTable1 S1 
LEFT JOIN #SampleTable2 S2 ON S1.NUM=S2.NUM
WHERE S2.NUM IS NULL;
GO
--METHOD 6 (Using CORRELATED SUBQUERY)
SELECT NUM AS [CORRELATED SUBQUERY]
FROM #SampleTable1 AS S1 
WHERE (SELECT COUNT(*) FROM #SampleTable2 S2
WHERE S2.NUM = S1.NUM) = 0;
GO
--METHOD 7 (Using <> ALL)
SELECT NUM AS [<> ALL]
FROM #SampleTable1
WHERE NUM <>ALL
(
SELECT NUM
FROM #SampleTable2
);
GO
--METHOD 8 (CROSS APPLY)
SELECT T1.NUM AS [CROSS APPLY] 
FROM #SampleTable1 AS S1
CROSS APPLY
(
    SELECT S1.NUM
    EXCEPT
    SELECT NUM
    FROM #SampleTable2
) T1;
GO
--METHOD 9 (Using FULL OUTER JOIN/IS NULL)
SELECT S1.NUM AS [FULL OUTER JOIN] 
FROM #SampleTable1 S1 
FULL OUTER JOIN #SampleTable2 S2 ON S1.NUM=S2.NUM
WHERE S2.NUM IS NULL;
GO
--METHOD 10 (Using NOT IN)
SELECT NUM AS [NOT IN] 
FROM #SampleTable1 
WHERE NUM NOT IN
(SELECT NUM FROM #SampleTable2);
GO
Select * from A where 0 = ( select count(*) from B where A.id = B.id)