logo

SQL низ за сравнение

В този SQL раздел ще обсъдим как да сравняваме два или повече низа в езика за структурирани заявки

Можем да сравним два или повече низа с помощта на функцията за низ STRCMP, оператор LIKE и оператор Equal.

Функция STRCMP String

STRCMP е функция на низ, която сравнява посочените два низа и дава 0, ако дължината на първия низ е равна на дължината на втория низ. Ако дължината на първия низ е по-голяма от дължината на втория низ, тогава функцията връща 1, в противен случай -1.

Синтаксис на функцията STRCMP

 SELECT STRCMP (String_1, String_2); 

Примери за функция STRCMP String

Пример 1: Следната SELECT заявка сравнява дължината на JAVATPOINT и EXAMPLES низове:

 SELECT STRCMP ('JAVATPOINT', 'EXAMPLES'); 

Изход:

 1 

Пример 2: Следната SELECT заявка сравнява дължината на две изречения, преминаващи във функцията STRCMP:

 SELECT STRCMP ('Website is good', 'javatpoint is good'); 

Изход:

 -1 

Пример 3: Следната SELECT заявка сравнява дължината на два града:

 SELECT STRCMP ( 'Delhi', 'Noida'); 

Изход:

 0 

Оператор LIKE

Операторът LIKE съпоставя конкретния модел с всеки ред от полето и връща съответстващите стойности в изхода. Този оператор винаги се използва с клаузата WHERE в оператора SQL.

Синтаксис на оператора Like

 SELECT Column_Name_1, Column_Name_2, Column_Name_3, ……, Column_Name_N FROM Table_Name WHERE Column_Name LIKE Pattern; 

Пример за оператор LIKE

Нека вземем следната таблица Student:

Roll_No Първо име град Възраст Процент Степен
101 Акаш Делхи 18 89 A2
102 Бхавеш Канпур 19 93 A1
103 Яш Делхи двадесет 89 A2
104 Бхавна Делхи 19 78 B1
105 ятин Лакнау двадесет 75 B1
106 Ишака Газиабад 19 91 C1
107 Вивек Гоа двадесет 80 B2

Заявка 1: Следната заявка показва записа на онези студенти от горната таблица Student, чието First_Name започва с буква „B“:

 SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE 'B%'; 

Резултат от горната заявка:

Roll_No Първо име Процент Степен
102 Бхавеш 93 A1
104 Бхавна 78 B1

Както е показано в горния резултат, таблицата съдържа само записа на учениците Bhavesh и Bhavna, тъй като техните имена започват с буквата B.

Заявка 2: Следната заявка показва записа на онези студенти от дадената таблица Student, чието First_Name съдържа знака 'a' на произволна позиция:

 SELECT Roll_No, First_Name, Percentage, Grade FROM Student WHERE First_Name LIKE '%a%' ; 

Резултат от горната заявка:

Roll_No Първо име град Възраст Процент Степен
101 Акаш Делхи 18 89 A2
102 Бхавеш Канпур 19 93 A1
103 Яш Делхи двадесет 89 A2
104 Бхавна Делхи 19 78 B1
105 ятин Лакнау двадесет 75 B1
106 Ишака Газиабад 19 91 C1

Оператор за равенство (=)

Това е вид оператор за сравнение, който показва съответстващите данни от дадена SQL таблица.

Този оператор се използва широко от потребителите на бази данни в Structured Query Language.

Този оператор връща TRUE редове от таблицата на базата данни, ако стойността на колоната е същата като стойността, посочена в заявката.

Синтаксис на оператора Equal:

 SELECT * FROM Table_Name WHERE Column_Name = Value; 

Пример за оператор Equal

Нека вземем следната работна таблица:

Worker_Id Работник_Име Работнически_град Работник_Заплата Работник_бонус
101 Анудж Газиабад 35 000 2000 г
102 Тушар Лакнау 29 000 3000
103 Вивек Колката 35 000 2500
104 Шивам Гоа 22000 3000

Следната заявка показва записа на онези работници от таблицата на работниците, чиято Worker_Salary е 35000:

 SELECT * FROM Worker WHERE Worker_Salary = 35000; 

Изход:

Worker_Id Работник_Име Работнически_град Работник_Заплата Работник_бонус
101 Анудж Газиабад 35 000 2000 г
103 Вивек Колката 35 000 2500