Desidero selezionare il risultato in sqlite da più tabelle con più chiavi esterne, ho provato JOIN
ma non ha funzionato così bene; per esempio:Come selezionare il risultato sqlite da più tabelle con più chiavi esterne
un tavolo per STUDENT
:
CREATE TABLE STUDENT (
STUDENT_NAME TEXT NOT NULL,
STUDENT_NUMBER INTEGER PRIMARY KEY NOT NULL,
STUDENT_ADDRESS TEXT NOT NULL
);
e un tavolo per EXAMS
:
CREATE TABLE EXAMS(
EXAM_CODE INTEGER PRIMARY KEY NOT NULL,
EXAM_SUBJECT TEXT NOT NULL,
EXAM_LOCATION TEXT NOT NULL
);
e una tabella chiamata WROTE_EXAM
per ottenere le informazioni per gli studenti che ha scritto un esame specifico
CREATE TABLE WROTE_EXAM (
STUDENT_NUMBER INTEGER NOT NULL,
EXAM_CODE INTEGER NOT NULL,
DATE DATE NOT NULL,
FOREIGN KEY(STUDENT_NUMBER) REFERENCES STUDENT(STUDENT_NUMBER),
FOREIGN KEY(EXAM_CODE) REFERENCES EXAMS(EXAM_CODE));
questo è un esempio di dati io inserite in modo in tabelle:
STUDENT_NAME : John
STUDENT_NUMBER: 123456789
STUDENT_ADDRESS : 10th street
EXAM_CODE: 123
EXAM_SUBJECT: One Subject
EXAM_LOCATION: Class
ora, voglio:
a) i nomi degli studenti in uscita, i codici d'esame e posizione degli studenti, che ha scritto l'esame
b) il codice esame di uscita, esame soggetto e il luogo d'esame per gli studenti con ID: 123456789
grazie
Quali JOIN hai provato? –
@muistooshort Ho fatto 'SELECT DISTINCT STUDENT_NAME, EXAM_CODE, STUDENT_LOCATION FROM WROTE_EXAM, STUDENT JOIN EXAMS, STUDENTI' non so come unire 3 tabelle insieme e ottenere queste informazioni –