মাইক্রোসফ্ট বর্তমানে এই সিনট্যাক্সের অনুমতি দেয়।
SELECT *
FROM ( VALUES (1) ) AS g(x)
WHERE EXISTS (
SELECT *
FROM ( VALUES (1),(1) )
AS t(x)
WHERE g.x = t.x
HAVING count(*) > 1
);
লক্ষ্য করুন যে GROUP BY
এই EXISTS
ধারাটিতে কোনও নেই , তা কি বৈধ এএনএসআই এসকিউএল। বা এটি কেবল একটি বাস্তবায়নের বিশদ উন্মুক্ত করছে।
রেফারেন্সের জন্য, পোস্টগ্র্রেএসকিউএলে এই একই সিনট্যাক্সের অনুমতি নেই।
ত্রুটি: কলাম "tx" অবশ্যই গ্রুপ বা গ্রুপে উপস্থিত হতে হবে বা একটি সামগ্রিক ফাংশনে ব্যবহৃত হবে
তবে এই বাক্য গঠনটি অনুমোদিত ...
SELECT *
FROM ( VALUES (1) ) AS g(x)
WHERE EXISTS (
SELECT 1 -- This changed from the first query
FROM ( VALUES (1),(1) )
AS t(x)
WHERE g.x = t.x
HAVING count(*) > 1
);
এবং এই সিনট্যাক্স অনুমোদিত হয়।
SELECT *
FROM ( VALUES (1) ) AS g(x)
WHERE EXISTS (
SELECT *
FROM ( VALUES (1),(1) )
AS t(x)
WHERE g.x = t.x
GROUP BY t.x -- This changed from the first query
HAVING count(*) > 1
);
চ্যাটটিতে @ এরিকের সাথে কথোপকথন থেকে প্রশ্ন ওঠে