連絡先と呼ばれるアドレス帳があります。連絡先を整理するために、グループ (家族、友人、職場など) を用意しています。たとえば、グループごとに表示する連絡先の例を 4 つまたは 10 プルしたいと考えています。これは、すべてのグループが一覧表示されるグループ インデックス ページを対象としていますが、グループごとの連絡先の完全な一覧を表示することを意図したものではありません (専用のグループ ページのみ)。
グループ テーブルと列
email_groups
id
、id_user
、name
連絡先の表と列
email_contacts
id
、id_group
、id_user
、name
私はこれに取り組んできましたが、 の列名が間違っていますc1
。
SELECT
eg.id,
eg.name,
(SELECT c1.name FROM email_contacts AS c1 WHERE id_user='1' LIMIT 0,1) AS contact_1,
(SELECT c2.name FROM email_contacts AS c1 WHERE id_user='1' LIMIT 1,1) AS contact_2,
(SELECT c3.name FROM email_contacts AS c3 WHERE id_user='1' LIMIT 2,1) AS contact_3,
(SELECT c4.name FROM email_contacts AS c4 WHERE id_user='1' LIMIT 3,1) AS contact_4
FROM email_groups AS eg
INNER JOIN email_contacts AS ec on ec.id=eg.id_group