Ich möchte nur Studenten IDs, die keine Zeile haben, wo Produkt-ID 11 ist. Aber ich kann nicht. Was soll ich machen?mysql wählen nicht funktioniert
BEGIN TRANSACTION;
CREATE TABLE STUDENTS(Id integer PRIMARY KEY, name text,year_born integer
);
CREATE TABLE PROJECT(project_id integer,title text,project_owner
text,year_written integer);
CREATE TABLE PROJECTWORKS(student_id integer,project_id integer);
INSERT INTO STUDENTS VALUES(1598,'james',1996);
INSERT INTO STUDENTS VALUES(2479,'andre',1996);
INSERT INTO STUDENTS VALUES(3682,'pierre',1997);
INSERT INTO PROJECT VALUES(10,'A','ABC',2008);
INSERT INTO PROJECT VALUES(11,'B','ABC',2010);
INSERT INTO PROJECT VALUES(12,'C','ABC',2016);
INSERT INTO PROJECT VALUES(13,'D','CBA',2014);
INSERT INTO PROJECTWORKS VALUES(1598,10);
INSERT INTO PROJECTWORKS VALUES(1598,11);
INSERT INTO PROJECTWORKS VALUES(1598,12);
INSERT INTO PROJECTWORKS VALUES(3682,12);
INSERT INTO PROJECTWORKS VALUES(3682,13);
INSERT INTO PROJECTWORKS VALUES(2479,12);
SELECT * FROM STUDENTS;
SELECT * FROM PROJECT;
SELECT * FROM PROJECTWORKS;
SELECT DISTINCT student_id FROM PROJECTWORKS
WHERE not project_id=11 and (project_id=10 OR project_id=12 OR
project_id=13);
Ich will nur und Da 11. hat
Nichts in Ihrem Code heißt 'product_id'. –
Meinst du nicht 11? Ich sehe keine mit Produkt ID = 14? – kbball
Anstelle von "x = 1 ODER x = 2 ODER x = 3" betrachte es als "x IN (1,2,3)". ja – tadman