দুটি পৃথক ডাটাবেসে টেবিলের মধ্যে যোগদান করবেন?


123

মাইএসকিউএলে আমার দুটি পৃথক ডাটাবেস রয়েছে - আসুন তাদের এ এবং বি কল করুন ।

ডাটাবেস এ- তে থাকা একটি টেবিলের মধ্যে, ডাটাবেস বিতে থাকা টেবিলের সাথে কি অংশ নেওয়া সম্ভব ?

উত্তর:


154

হ্যাঁ, ধরে নিচ্ছেন অ্যাকাউন্টটির যথাযথ অনুমতি রয়েছে যা আপনি ব্যবহার করতে পারেন:

SELECT <...>
FROM A.table1 t1 JOIN B.table2 t2 ON t2.column2 = t1.column1;

এটিতে থাকা ডাটাবেসের নামের সাথে আপনাকে কেবল সারণি রেফারেন্সটি উপস্থাপন করতে হবে।


4
বিভিন্ন সার্ভার থেকে দুটি ডাটাবেস সম্পর্কে কি? (উদাহরণস্বরূপ, ক্লাউড পরিষেবা সার্ভারে একটি ডিবি এবং আপনার নিজের সার্ভারে ডিবিতে)
— ইউভাল এ।

1
বিভিন্ন ডিবি'র সাথে কী যোগ দেওয়া সম্ভব, ডিবি 1 = মাইএসকিএল এবং ডিবি 2 = পোস্টগ্র্যাস এসকিউএল)। উভয়ের কয়েকটি সাধারণ টেবিল রয়েছে।
— MAX

1
@ ইউভালা। @ নৌকা কোডার আমার মনে হয় না ইউভাল পারফরম্যান্স সম্পর্কে জিজ্ঞাসা করছে। কেবল ক্রস-সার্ভারে যোগ দিতে কীভাবে তা জিজ্ঞাসা করা হচ্ছে। আপনার পক্ষে ক্লায়েন্টকে দুটি সংযোগ স্থাপন করতে বলা প্রয়োজন বলে বেশ কঠিন হবে।
— জয়েন

নিশ্চিত করুন যে ডাটাবেসের নাম টেবিলের নামের মতো একই ব্যাকটিকের ভিতরে নেই অন্যথায় আপনি পাবেনERROR 1146 (42S02): Table 'currentdb.otherdb.tablename' doesn't exist
— জেফ

ধন্যবাদ। এটি আমার সাথে ওরফে নামগুলি ছাড়াও কাজ করেছেFROM A.table1 JOIN B.table2 ON B.table2 .column2 = A.table1.column1
— অ্যাকাউন্টেন্ট



0
SELECT <...>
FROM A.table1 t1 JOIN B.table2 t2 ON t2.column2 = t1.column1;

কেবলমাত্র নিশ্চিত করুন যে নির্বাচনী রেখায় আপনি কোন টেবিল কলামগুলি ব্যবহার করছেন তা নির্দিষ্ট রেফারেন্স দ্বারা বা উপনাম দ্বারা নির্দিষ্ট করে দিয়েছেন। নিম্নলিখিত যে কোনও কাজ করবে:

SELECT *
SELECT t1.*,t2.column2
SELECT A.table1.column1, t2.*
etc.
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.