私のプロジェクトでは、名前、年齢などの定期的な情報を持つユーザーテーブルがあり、それを接続する関係テーブルを持つ別のテーブルにリストされています。左の結合を使用した複数の結果の連結
このようなものです。
TBL_User (name, dateofbirth, mail)
TBL_PhoneType (id, phonetype) //like, cellphone, home phone, etc.
TBL_PhoneNumber (id, phonetype, phonenuber) //lists muliple values for each user
TBL_PhoneRelation (userid, pnid)
私は、ユーザ情報と電話番号のCONCATバージョンを返すように選択をしようとしてんだけど、問題は、私が得る結果です。
私の最初の試みは、問題は、私はすべてのデータベースからの値と正規CONCATショーのみ1つの電話番号、およびサブ選択のみ1行を取得していないことをGROUP_CONCAT、
SELECT us.name, us.dateofbirth, GROUP_CONCAT(' ', pt.phonetype, ' ', p.phonenumber)
FROM TBL_User AS us
LEFT JOIN TBL_PhoneRelation AS pr ON pr.userid = us.id
LEFT JOIN TBL_PhoneNumber AS p ON p.id = pr.pnid
のようなものがあるさ結果に1行以上あるのでエラーが出ます。
私はこのようなものだろう。この
User name | Phone number | E-mail
Adrian | Cellphone 11..., Home phone 22... | adrian...
Suzan | Cellphone 32..., Commercial phone 44... | sue...
が手袋のような、しかし、IDによるグループとフィットします。 – douglascast