SELECT
এক বিবৃতিতে 2 বর্গক্ষেত্রের বিবৃতিতে কী ফলাফল পাওয়া সম্ভব ? আমার কাছে কার্যগুলির একটি ডাটাবেস রয়েছে যেখানে প্রতিটি রেকর্ডের একটি পৃথক কার্য, সময়সীমা সহ (এবং একটি PALT
, যা INT
শুরু থেকে শেষ সময়সীমা থেকে মাত্র কয়েকদিন পরে Age
থাকে also এছাড়াও INT
বেশ কয়েকটি দিন is )
আমি একটি টেবিল রাখতে চাই যাতে প্রতিটি টেবিলে প্রতিটি ব্যক্তি থাকে, তাদের কতগুলি কার্য সম্পাদনের সংখ্যা রয়েছে এবং তাদের কতগুলি LATE
কার্যের সংখ্যা রয়েছে (যদি থাকে তবে)
আমি সহজেই আলাদা আলাদা টেবিলগুলিতে এই ডেটা পেতে পারি:
SELECT ks, COUNT(*) AS '# Tasks' FROM Table GROUP BY ks
তথ্য ফিরিয়ে দেওয়া:
ks # Tasks
person1 7
person2 3
এবং তারপরে আমার কাছে রয়েছে:
SELECT ks, COUNT(*) AS '# Late' FROM Table WHERE Age > Palt GROUP BY ks
যা প্রত্যাবর্তন করে:
ks # Late
person1 1
person2 1
এবং আমি এই দুটি select
বিবৃতিতে ফলাফলের সাথে যোগ দিতে চাই (দ্বারা KS
)
আমি একটি টেম্প টেবিল ব্যবহার এড়াতে চেষ্টা করছি, তবে এটি করার একমাত্র ব্যবহারিক উপায় যদি, আমি এই ফ্যাশনে টেম্প টেবিল ব্যবহার সম্পর্কে আরও জানতে চাই।
আমি কয়েকটি ধরণের count()
সারি করার চেষ্টা করেছি যা শর্তসাপেক্ষে সন্তুষ্ট হয় তবে কীভাবে এটি করা যায় তা আমি বুঝতে পারি না। যদি এটি সম্ভব হয় তবে তাও কার্যকর হবে।
সংযোজন: দুঃখিত, আমি চাই আমার ফলাফলের জন্য কলাম আছে KS
, Tasks
এবংLate
KS # Tasks # Late
person1 7 1
person2 3 1
person3 2 0 (or null)
অতিরিক্তভাবে, আমি চাই যে কোনও ব্যক্তির দেরি না করা সত্ত্বেও তারা প্রদর্শিত হবে show
SUM(CASE WHEN Age > Palt THEN 1 ELSE 0 END) Late
ভাল উত্তর দেয়, এই উত্তরের জন্য ধন্যবাদ!
দুটি নির্বাচিত বিবৃতিও কাজ করে, এগুলিতে LEFT JOIN
যোগদানের জন্য একটি ব্যবহার করে এটিও কাজ করে এবং আমি এখন বুঝতে পারি কীভাবে select
এই ফ্যাশনটিতে একাধিক এসগুলিতে যোগদান করা যায়