Как игнорировать 0 (нулевые) значения в SQL-запросе?
В SQL много раз нам требуется отображать все строки таблицы, в которых записи, имеющие 0 (ноль) в качестве записи/значения, игнорируются. Это достигается с помощью команды REPLACE в SQL. В этой статье мы обсудим, как игнорировать 0 (ноль) и заменять их пустым пространством в SQL. В этой статье мы будем использовать Microsoft SQL Server в качестве нашей базы данных.
Шаг 1 : Создайте базу данных. Для этого используйте приведенную ниже команду, чтобы создать базу данных с именем GeeksForGeeks.
Запрос:
CREATE DATABASE GeeksForGeeks
Выход:
Шаг 2: Используйте базу данных GeeksForGeeks. Для этого используйте приведенную ниже команду.
Запрос:
USE GeeksForGeeks
Выход:
Шаг 3: Создайте таблицу MARKS внутри базы данных GeeksForGeeks. Эта таблица имеет 4 столбца, а именно ID, ENG, MATHS и PHYS, содержащие идентификаторы учащихся и оценки по различным предметам.
Запрос:
CREATE TABLE MARKS( ID INT, ENG INT, MATHS INT, PHYS INT);
Выход:
Шаг 4: Вставьте 5 строк в таблицу MARKS и введите несколько значений 0 (ноль) в качестве предметных знаков, чтобы продемонстрировать, как игнорировать такие записи.
Запрос:
INSERT INTO MARKS VALUES(1,99,0,89); INSERT INTO MARKS VALUES(2,0,65,78); INSERT INTO MARKS VALUES(3,83,85,0); INSERT INTO MARKS VALUES(4,0,77,0); INSERT INTO MARKS VALUES(5,97,45,54);
Выход:
Шаг 5: Отобразите все строки таблицы MARKS, включая 0 (нулевые) значения.
Запрос:
SELECT * FROM MARKS;
Выход:
Шаг 6: Отобразите все строки таблицы MARKS, игнорируя 0 (нулевые) значения. Это достигается с помощью команды REPLACE, которая заменяет все 0 пустым пробелом.
Синтаксис:
REPLACE(Column_name, value_to_be_replaced, new_value)
Чтобы выполнить это для нескольких столбцов, поставьте запятую, а затем напишите несколько команд замены.
Запрос:
SELECT ID, REPLACE(ENG,0,"") "ENG", REPLACE(MATHS,0,"") "MATHS", REPLACE(PHYS,0,"") "PHYS" FROM MARKS;
Выход: