You are given a table, Functions, containing two columns: X and Y.
Two pairs (X1, Y1) and (X2, Y2) are said to be symmetric pairs if X1 = Y2 and X2 = Y1.
Write a query to output all such symmetric pairs in ascending order by the value of X. List the rows such that X1 ≤ Y1.
Вам дана таблица «Функции», содержащая два столбца: X и Y.
Две пары (X1, Y1) и (X2, Y2) называются симметричными парами, если X1 = Y2 и X2 = Y1.
Напишите запрос, чтобы вывести все такие симметричные пары в порядке возрастания значения X. Перечислите строки, такие что X1 ≤ Y1.
SELECT f1.x, f1.y from functions f1
INNER JOIN functions f2
WHERE (f2.x = f1.y)
AND (f1.x = f2.y)
GROUP BY f1.x, f1.y
HAVING ((f1.x = f1.y) AND (COUNT(*) > 1))
OR (f1.x < f1.y)
ORDER BY f1.x;
SELECT f1.x, f1.y from functions f1
INNER JOIN functions f2
WHERE (f2.x = f1.y)
AND (f1.x = f2.y)
GROUP BY f1.x, f1.y
HAVING ((f1.x = f1.y) AND (COUNT(*) > 1))
OR (f1.x < f1.y)
ORDER BY f1.x;