2017-04-26 109 views
0

我有以下的数据库模式:SQLite的,多对多关系

CREATE TABLE "Student" (
"Student_ID" INTEGER PRIMARY KEY NOT NULL , 
"First_Name" CHAR, "Last_Name" CHAR, "Course" CHAR, 
"Year" INTEGER, "Semester" INTEGER) 

CREATE TABLE "AddBook" ("Book_ID" INTEGER PRIMARY KEY NOT NULL , 
"Name" CHAR, "Edition" INTEGER, "Publisher" CHAR, "Price" INTEGER, 
"Page" INTEGER) 

我正在GA表办理借阅图书的名称问题,我把其中的“student_id数据”和“Book_ID”和日期借用这是数据库模式:

CREATE TABLE "Issue" ("Student_ID" INTEGER PRIMARY KEY NOT NULL , 
"Book_ID" INTEGER NOT NULL ,"Date" INTEGER DEFAULT (null)) 

如何表现出任何的借书但显示的是所有学生的信息和所有的图书信息的,你可以这样做的日期

+1

提示:'JOIN'表一起。 –

回答

0

你有三个表join在一起:

SELECT * 
FROM Issue 
JOIN Student USING (Student_ID) 
JOIN AddBook USING (Book_ID); 
2

SELECT s.*, b.*, i.date 
FROM Issue I 
INNER JOIN Student s ON (i.Student_ID = s.Student_ID) 
INNER JOIN AddBook b ON (i.Book_ID = b.Book_ID) 

INNER JOIN会发现这场比赛的学生,并使用您提供的ID您的问题表的匹配书。