Anda cukup bergabung dengan tabel database yang berbeda. Anda perlu menentukan nama database di FROM . Anda ayat. Untuk mempersingkat, tambahkan ALIAS di atasnya,
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`
tetapi entah bagaimana, ada kemungkinan di mana-dalam username tidak akan memiliki pesan. Dalam hal ini gunakan LEFT JOIN jika Anda ingin tetap menampilkan semua catatan dba.Username .
Membaca dari komentar Anda, tabel memiliki collation yang berbeda . Cara mengatasinya adalah dengan menentukan COLLATE pada pernyataan gabungan Anda,
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`
Anda dapat mengubah latin1_swedish_ci untuk apa pun yang Anda inginkan.
Untuk info lebih lanjut tentang COLLATION, lihat daftar lengkap
Set Karakter dan Kumpulan di MySQL
Jika Anda memiliki hak istimewa yang cukup untuk ALTER tabel, cukup gunakan sintaks ini untuk secara manual mengonversi dan mencocokkan susunannya,
ALTER TABLE tbl_name CONVERT TO CHARACTER SET latin2 COLLATE 'latin2_general_ci';