0

私は3つのテーブルを持っています:

users:

uid int(11) - userid(primary key, auto_increment)
name varchar(255)
pass varchar(64)
created int(11)

projects:

pid int(11) .....
name varchar(150)
description varchar(255)
created int(11)

users_projects:

uid int(11) - user id
pid int(11) - product id

クエリは何ですか: 特定の名前のユーザーの名前で並べ替えられたプロジェクト (名前と説明) を表示しますか?

これは私がこれまでに持っているものです:

SEECT name,description FROM projects ORDER BY name ASC
4

2 に答える 2

2
SELECT  a.*, b.*
FROM    users a
        INNER JOIN users_projects b
            ON a.uid = b.uid
        INNER JOIN projects c
            ON b.pid = c.pid
ORDER   BY a.Name ASC

結合についてさらに詳しく知りたい場合は、以下のリンクにアクセスしてください。

于 2013-02-11T11:58:33.473 に答える
2

テーブルを結合するだけでよいようです。@Nameプロジェクトの詳細が必要なユーザーの名前を含むパラメーターを次に示します。

SELECT projects.Name,
       projects.Description
FROM   projects
       INNER JOIN users_projects
         ON projects.pid = users_projects.pid
       INNER JOIN Users
         ON users_projects.UId = Users.UId
WHERE  Users.Name = @Name
ORDER  BY projects.Name ASC
于 2013-02-11T12:00:49.977 に答える