आप बस विभिन्न डेटाबेस की तालिका में शामिल हो सकते हैं। आपको अपने FROM
. में डेटाबेस नाम निर्दिष्ट करने की आवश्यकता है खंड। इसे छोटा करने के लिए, एक ALIAS
जोड़ें उस पर,
SELECT a.*, -- this will display all columns of dba.`UserName`
b.`Message`
FROM dba.`UserName` a -- or LEFT JOIN to show all rows whether it exists or not
INNER JOIN dbB.`PrivateMessage` b
ON a.`username` = b.`username`
लेकिन कुछ कैसे, संभावनाएँ हैं जहाँ-एक username
. में संदेश नहीं होंगे। इस मामले में LEFT JOIN
use का उपयोग करें यदि आप अभी भी dba.Username
. के सभी रिकॉर्ड दिखाना चाहते हैं ।
आपकी टिप्पणियों से पढ़ना, तालिकाओं में भिन्न collation
है . इस पर काम करने के लिए COLLATE
. निर्दिष्ट करना है आपके सम्मिलित बयानों पर,
SELECT a.*, -- this will display all columns of dba.`UserName`
b.`Message`
FROM dba.`UserName` COLLATE latin1_swedish_ci a
LEFT JOIN dbB.`PrivateMessage` COLLATE latin1_swedish_ci b
ON a.`username` = b.`username`
आप latin1_swedish_ci
को बदल सकते हैं जो कुछ भी आप चाहते हैं।
COLLATION के बारे में अधिक जानकारी के लिए,
. की यह पूरी सूची देखेंMySQL में कैरेक्टर सेट और कॉलेशन
यदि आपके पास ALTER
. के लिए पर्याप्त विशेषाधिकार है टेबल, बस इस सिंटैक्स का उपयोग मैन्युअल रूप से कनवर्ट करने और उनके कोलाज से मिलान करने के लिए करें,
ALTER TABLE tbl_name CONVERT TO CHARACTER SET latin2 COLLATE 'latin2_general_ci';