Можно ли сравнивать кортежи в Oracle-совместимом sql?

Я не на 100%, если кортежи - это термин для того, о чем я говорю, но я смотрю на что-то вроде этого:

Table grades
user    grade
------------
Jim     B
Bill    C
Tim     A
Jim     B+

Я знаю, что могу :

SELECT COUNT(*)
FROM grades
WHERE (
   (user = 'Jim' AND grade = 'B')
   OR (user = 'Tim' AND grade = 'C')
);

Но есть ли способ сделать что-то подобное?

SELECT COUNT(*)
    FROM grades
    WHERE (user, grade) IN (('Jim','B'), ('Tim','C'));

РЕДАКТИРОВАТЬ: В качестве побочного примечания, я тестировал только с:

(user, grade) = ('Tim','C')

И это не удалось, поэтому я предположил, что IN тоже не сработает, но Я был неправ (к счастью!).

9
задан user126715 24 March 2011 в 21:00
поделиться