ধরুন আমার কাছে টেবিলগুলি একটি (কলাম এ 1 সহ) এবং বি (কলাম বি 1 এবং বি 2 সহ) আছে এবং আমি একটি বাম বাহ্যিক জোড় সম্পাদন করব
SELECT *
FROM a LEFT OUTER JOIN b
ON a.a1 = b.b1
তারপরে বি 1 এবং বি 2 হবে NULL যেখানে a1 এর মান বি 1 এর কোনও মিল নেই।
আমি কি নুলের পরিবর্তে বি 2 এর জন্য একটি ডিফল্ট মান সরবরাহ করতে পারি? লক্ষ্য করুন একসঙ্গে বেড়ে ওঠা এখানে কাজ করবে না, কারণ আমি না ডিফল্ট মান B2 সম্ভাব্য NULLs মানের ওভাররাইড করতে যেখানে চান হয় B1 ম্যাচিং A1 একটি মান।
যে, একটি এবং খ হিসাবে
CREATE TABLE a (a1)
AS VALUES (1),
(2),
(3) ;
CREATE TABLE b (b1,b2)
AS VALUES (1, 10),
(3, null) ;
a1 b1 | b2
--- --------
1 1 | 10
2 3 | NULL
3
এবং 100 এর বি 2 এর জন্য একটি ডিফল্ট, আমি ফলাফলটি পেতে চাই
a1 | b1 | b2
---------------
1 | 1 | 10
2 | NULL | 100
3 | 3 | NULL
এই সাধারণ ক্ষেত্রে আমি "হাত দ্বারা" এটি করতে পারলাম আউটপুটে বি 1 NULL কিনা তা দেখে। এটি কি সাধারণভাবে সেরা বিকল্প, নাকি আরও মানসম্মত ও সুন্দরতর উপায় আছে?
sql
(যার অর্থ "এসকিউএল কোয়েরি ভাষা" That ট্যাগটি কোনও নির্দিষ্ট ডিবিএমএস পণ্য বা উপভাষাকে বোঝায় না)। অংশ:[b2]=CASE WHEN ... END
একটি অবৈধ (মানক) এসকিউএল এক্সপ্রেশন।