MySQL Intersect на той же таблице

Мой исходный запрос:

SELECT * from test where ID BETWEEN 10 AND 100
INTERSECT
SELECT * from test where MARKS=10

Но INTERSECT не работает в MySQL. Я запрашиваю из той же таблицы, а INNER JOIN не работает.


person user3353758    schedule 10.04.2014    source источник
comment
Что значит не работает? Почему бы просто не использовать AND для предикатов?   -  person zerkms    schedule 10.04.2014
comment
чего вы хотите достичь?   -  person Yohanes Khosiawan 许先汉    schedule 10.04.2014


Ответы (1)


Похоже, это должно работать нормально.

SELECT * from test where ID BETWEEN 10 AND 100
INTERSECT
SELECT * from test where MARKS=10

Однако вы можете проверить это против этого, что является лучшим способом сделать то же самое.

SELECT * from test where ID BETWEEN 10 AND 100
                     and  MARKS=10

Если оба дают вам одно и то же, то они оба работают, и в ваших данных есть что-то, чего вы не понимаете.

person Karl Kieninger    schedule 10.04.2014