1

重複の可能性:
複数のテーブルから詳細を取得する方法は?

MySql データベースには 5 つのテーブルがあります

Course

c_id         name     course_desc
101           java       sometext…..

User

u_id       firstname      Address
201          ram               Hyd

SkillSet

S_id     c_id     u_id    experience    course_content
301      101       201       2                          somtext…

Timetable

T_id      c_id    u_id     date_time            class_duration(H)
401        101      201   2012-08-08              2

Intrest

I_id        t_id      u_id
501         401       201

私の質問は、開始日と終了日と名前(コース名)を渡しているので、次のような詳細を取得したいということです

Name(courseName),course_desc,firstname


select course.c_id,course.course_desc,user.firstname
    from COURSE course
    inner join SKILLSET skill on skill.course_id=course.c_id
    inner join USER user on user.c_id=skill.u_id
    inner join TIMETABLE tt on skill.c_id=tt.u_id
    where course.name='java'
    and tt.date_time BETWEEN '2012-08-07 00:00:00' AND '2012-08-20 00:00:00'

エラーが表示されています..助けてください…. ...

4

2 に答える 2

0

名前については、次のようなクエリを作成する必要があります。

select name from Course c,SkillSet s where c.cid= s.cid.

結合がどのように機能するかを理解できたと思います。異なるテーブルで共通の列を見つけます (この場合、cid が共通の列です)。次に、テーブルを結合すると、必要に応じて属性を取得できます。

于 2012-08-07T04:58:43.887 に答える
0

interまたはskillテーブルでリンクしている場所がわかりません:

INNER JOIN Skillset on skill.cid = course.cid
                       ^^^^^
INNER JOIN AM_USER user on user.uid = inter.uid
                                      ^^^^^

また、一般的なヒントとして、エラーが発生したと言う場合、実際にエラーが何であるかを言うと非常に役立ちます。エラー テキストが表示されない場合は推測にすぎず、有用な回答が得られる可能性は低くなります。

于 2012-08-07T04:43:02.043 に答える