Использование CASE в предложении ORDER BY для сортировки записей по наименьшему значению двух столбцов в SQL
В этой статье мы увидим, как использовать CASE в предложении ORDER BY для сортировки записей по наименьшему значению из двух столбцов в SQL.
СЛУЧАЙ заявление:
Этот оператор содержит одно или несколько условий с соответствующим результатом. Когда условие выполняется, чтение прекращается и возвращается соответствующий результат (аналогично оператору IF-ELSE).
Он возвращает значение, указанное в предложении ELSE в операторе CASE, если никакие условия не выполняются. Он вернет NULL, если предложение ELSE отсутствует в операторе.
Синтаксис СЛУЧАЯ:
CASE WHEN condition1 THEN result1 WHEN condition2 THEN result2 WHEN condition3 THEN result3 ELSE result END;
ORDER BY: это ключевое слово используется для сортировки набора результатов в порядке возрастания или убывания. По умолчанию он сортирует записи в порядке возрастания. ASC или DESC — это ключевое слово для сортировки записи в порядке возрастания или убывания соответственно.
ЗАКАЗАТЬ ПО Синтаксис:
SELECT column_name1, column_name2, ... FROM table_name ORDER BY column_name1, column_name2, ... ASC|DESC;
Шаг 1: Создание базы данных
Используйте приведенный ниже оператор SQL, чтобы создать базу данных с именем geeks.
Запрос:
CREATE DATABASE geeks;
Шаг 2: Использование базы данных
Используйте приведенный ниже оператор SQL, чтобы переключить контекст базы данных на компьютерщиков.
Запрос:
USE geeks;
Шаг 3: Определение таблицы
У нас есть следующая demo_table в нашей компьютерной базе данных.
Запрос:
CREATE TABLE demo_table( ID int, NAME VARCHAR(20), APPLE int, ORANGE int);
Шаг 4: Вставьте данные в таблицу
Запрос:
INSERT INTO demo_table VALUES (1, "Romy", 45, 7), (2, "Rinkle", 20, 25), (3,"Shalini", 22, 29), (4, "Akanksha",50, 55), (5,"Ayushi", 40, 13);
Шаг 5: Использование CASE в предложении ORDER BY для сортировки записи по наименьшему значению столбца 2
Для демонстрации мы упорядочим таблицу, используя наименьшее значение столбцов «АПЕЛЬСИН» и «ЯБЛОКО».
Запрос:
SELECT * FROM demo_table ORDER BY CASE WHEN APPLE< ORANGE THEN APPLE ELSE ORANGE END
Выход:
Вывод Объяснение:
- ID = 1 является первым, потому что оранжевый столбец с ID = 1 имеет самую низкую запись в таблице.
- ID=5 является вторым, потому что оранжевый столбец с ID=5 имеет вторую самую низкую запись в таблице.
- ID = 2 является третьим, потому что столбец Apple с ID = 2 имеет третью самую низкую запись в таблице и так далее.