মাইএসকিউএল দুটি ক্ষেত্রের টেবিলগুলিতে কীভাবে যোগদান করবেন


102

আমার সাথে দুটি সারণী dateএবং idক্ষেত্র রয়েছে। আমি উভয় ক্ষেত্রে যোগ দিতে চাই। আমি চেষ্টা করেছিলাম

JOIN t2 ON CONCAT(t1.id, t1.date)=CONCAT(t2.id, t2.date)

যে কাজ করে, কিন্তু এটি খুব ধীর। এই কাজ করতে একটি ভাল উপায় আছে কি?

উত্তর:




27
SELECT * 
FROM t1
JOIN t2 USING (id, date)

সম্ভবত আপনাকে অভ্যন্তরীণ যোগদান করতে হবে বা যেখানে আপনি কেবল দুটি শর্তের সাথে মেলে ফলাফল চান টি টু.আইড নাল নয় use


1
মূলত, স্বচ্ছলতা হ'ল কারণ কংক্রিটটি এমন নতুন মান গণনা করে যার কোনও সূচি নেই তাই সরাসরি শর্তগুলি দ্রুত হওয়া উচিত। এমনকি যদি এই কোয়েরিটি আবার ধীর হয়ে যায় তবে চেকটি সূচকগুলি বিদ্যমান এবং কখনও কখনও 2 টি ক্ষেত্রের জন্য একটি সূচক তৈরি করাও অর্থবোধ করে।
ইউজিন কৌরভ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.