簡體   English   中英

加入MySQL中的查詢

[英]Join query in MySQL

我有兩個表:成員和續訂

這兩個表有一個名為memberid的字段,它將兩個數據表鏈接在一起。 我正在嘗試構建一個查詢,該查詢將從成員表中提取更新表中保存的數據的名字和姓氏。 我已經嘗試使用下面的查詢,該查詢基於我查找的一些示例。

SELECT members.memberfirst, members.membersurname, members.memberid, renewals.account_name, renewals.memberid 
FROM members, renewals 
WHERE renewals.memberid=members.memberid

嘗試在phpMyAdmin中運行時出現的錯誤:

#1267 - Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '='

替代文字

你應該使用INNER JOIN 看看這里: http//www.postgresql.org/docs/8.1/interactive/queries-table-expressions.html
即使它適用於PostgreSQL,MySQL的查詢也是一樣的,並且示例非常好。

SELECT members.memberfirst, members.membersurname, members.memberid, renewals.account_name
FROM members
INNER JOIN renewals
ON members.memberid = renewals.memberid

或者您可以使用USING (memberid)而不是ON members.memberid = renewals.memberid

如果要在單個列中顯示成員的名稱,請稍作修改

SELECT CONCAT(members.memberfirst, " ", members.membersurname) as memberName, 
members.memberid, renewals.account_name, renewals.memberid 
FROM members
INNER JOIN renewals
WHERE renewals.memberid=members.memberid

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM