logo

Како користити ИН у СКЛ-у

У овом СКЛ чланку ћете научити како да користите кључну реч ИН у упитима СКЛ базе података.

Шта је ИН кључна реч у СКЛ-у?

Тхе ИН је логички оператор у језику структурираних упита који омогућава корисницима базе података да дефинишу више од једне вредности у клаузули ВХЕРЕ.

конверзија типова и кастинг у јава

Клаузула ВХЕРЕ са ИН оператором приказује оне записе у резултату који су упарени са датим скупом вредности. Такође можемо навести потупит у загради ИН оператора.

Оператор ИН можемо користити са упитима ИНСЕРТ, СЕЛЕЦТ, УПДАТЕ и ДЕЛЕТЕ у СКЛ бази података.

ИН оператор у СКЛ-у замењује процес вишеструких услова ИЛИ у упитима.

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

 SELECT Column_Name_1, Column_Name_2, Column_Name_3, ......, Column_Name_N FROM Table_Name WHERE Column_Name IN (Value_1, Value_2, Value_3, ......., Value_N); 

Ако желите да користите ИН оператор у СКЛ изразима, морате да следите доле наведене кораке у истом редоследу:

  1. Креирајте базу података у СКЛ-у.
  2. Креирајте нову СКЛ табелу.
  3. Убаците податке у табелу.
  4. Погледајте уметнуте податке.
  5. Користите СКЛ ИН оператор за приказ података табеле.

Сада ћемо укратко објаснити сваки корак један по један са најбољим СКЛ примером:

Корак 1: Направите једноставну нову базу података

Први корак је креирање нове базе података у језику структурираних упита.

Следећа изјава ЦРЕАТЕ креира нову Машински_колеџ База података на СКЛ серверу:

 CREATE Database Mechanical_College; 

Корак 2: Направите нову табелу

Сада користите следећу СКЛ синтаксу која помаже у креирању нове табеле у бази података:

 CREATE TABLE table_name ( 1st_Column data type (character_size of 1st Column), 2nd_Column data type (character_size of the 2nd column ), 3rd_Column data type (character_size of the 3rd column), ... 
 Nth_Column data type (character_size of the Nth column) ); 

Следећа изјава ЦРЕАТЕ креира Фацулти_Инфо сто у Машински_колеџ База података:

 CREATE TABLE Faculty_Info ( Faculty_ID INT NOT NULL PRIMARY KEY, Faculty_First_Name VARCHAR (100), Faculty_Last_Name VARCHAR (100), Faculty_Dept_Id INT NOT NULL, Faculty_Joining_DateDATE, Faculty_City Varchar (80), Faculty_Salary INT ); 

Корак 3: Убаците податке у табелу

Следећи упити ИНСЕРТ убацују записе о факултетима у табелу Фацулти_Инфо:

 INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1001, Arush, Sharma, 4001, 2020-01-02, Delhi, 20000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1002, Bulbul, Roy, 4002, 2019-12-31, Delhi, 38000 ); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1004, Saurabh, Sharma, 4001, 2020-10-10, Mumbai, 45000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1005, Shivani, Singhania, 4001, 2019-07-15, Kolkata, 42000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary) VALUES (1006, Avinash, Sharma, 4002, 2019-11-11, Delhi, 28000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Joining_Date, Faculty_City, Faculty_Salary)VALUES (1007, Shyam, Besas, 4003, 2021-06-21, Lucknow, 35000); 

Корак 4: Прегледајте уметнуте податке

Следећа СЕЛЕЦТ изјава приказује податке табеле Фацулти_Инфо:

 SELECT * FROM Faculty_Info; 

Фацулти_Ид Име_факултета Презиме_факултета Фацулти_Депт_Ид Фацулти_Јоининг_Дате Фацулти_Цити Факултет_Плата
1001 медвед Схарма 4001 2020-01-02 Делхи 20000
1002 Булбул Рои 4002 2019-12-31 Делхи 38000
1004 Саурабх Рои 4001 2020-10-10 Мумбаи 45000
1005 Схивани Сингханиа 4001 2019-07-15 Колката 42000
1006 Авинасх Схарма 4002 2019-11-11 Делхи 28000
1007 Схиам Љубиш 4003 2021-06-21 Луцкнов 35000

Корак 5: Користите ИН Оператор да видите податке табеле Фацулти_Инфо на различите начине

Следећи упит користи нумеричке вредности са ИН оператором:

 SELECT Faculty_Id, Faculty_First_Name, Faculty_Dept_Id, Faculty_Joining_Date, Faculty_Salary FROM Faculty_Info WHERE Faculty_Salary IN ( 38000, 42000, 45000, 35000); 

Овај упит приказује само евиденцију оних факултета чија је плата пренета у ИН оператор клаузуле ВХЕРЕ.

Излаз:

Фацулти_Ид Име_факултета Фацулти_Депт_Ид Фацулти_Јоининг_Дате Факултет_Плата
1002 Булбул 4002 2019-12-31 38000
1004 Саурабх 4001 2020-10-10 45000
1005 Схивани 4001 2019-07-15 42000
1007 Схиам 4003 2021-06-21 35000

Следећи упит користи текстуалне или знаковне вредности са ИН логичким оператором:

 SELECT Faculty_Id, Faculty_First_Name, Faculty_Joining_Date, Faculty_City FROM Faculty_Info WHERE Faculty_City IN ( Mumbai, Kolkata, Lucknow); 

Овај упит приказује само запис оних факултета чији је град укључен у загради ИН оператора у клаузули ВХЕРЕ.

Излаз:

Фацулти_Ид Име_факултета Фацулти_Јоининг_Дате Фацулти_Цити
1004 Саурабх 2020-10-10 Мумбаи
1005 Схивани 2019-07-15 Колката
1007 Схиам 2021-06-21 Луцкнов

Следећи упит користи формат ДАТЕ са логичким оператором ИН:

 SELECT Faculty_Id, Faculty_First_Name, Faculty_Dept_ID Faculty_Joining_Date, Faculty_Salary FROM Faculty_Info WHERE Faculty_Joining_Date IN (2020-01-02, 2021-06-21, 2020-10-10, 2019-07-15); 

Овај упит приказује само оне записе факултета чији је датум придруживања прослеђен у ИН оператору клаузуле ВХЕРЕ.

Излаз:

Фацулти_Ид Име_факултета Фацулти_Депт_Ид Фацулти_Јоининг_Дате Факултет_Плата
1001 медвед 4001 2020-01-02 20000
1004 Саурабх 4001 2020-10-10 45000
1005 Схивани 4001 2019-07-15 42000
1007 Схиам 4003 2021-06-21 35000

Следећи упит користи СКЛ УПДАТЕ команду са ИН логичким оператором:

 UPDATE Faculty_Info SET Faculty_Salary = 50000 WHERE Faculty_Dept_ID IN (4002, 4003); 

Овај упит ажурира плату оних факултета чији је Депт_Ид прослеђен у ИН оператору клаузуле ВХЕРЕ.

Да бисте проверили резултат горњег упита, откуцајте следећи СЕЛЕЦТ упит у СКЛ-у:

претворити цхар у стринг
 SELECT * FROM Faculty_Info; 
Фацулти_Ид Име_факултета Презиме_факултета Фацулти_Депт_Ид Фацулти_Јоининг_Дате Фацулти_Цити Факултет_Плата
1001 медвед Схарма 4001 2020-01-02 Делхи 20000
1002 Булбул Рои 4002 2019-12-31 Делхи 50000
1004 Саурабх Рои 4001 2020-10-10 Мумбаи 45000
1005 Схивани Сингханиа 4001 2019-07-15 Колката 42000
1006 Авинасх Схарма 4002 2019-11-11 Делхи 50000
1007 Схиам Љубиш 4003 2021-06-21 Луцкнов 50000

СКЛ ИН оператор са подупитом

У језику структурираних упита можемо користити и потупит са логичким оператором ИН.

Синтакса ИН оператора са подупитом је дата у наставку:

 SELECT Column_Name_1, Column_Name_2, Column_Name_3, ......, Column_Name_N FROM Table_Name WHERE Column_Name IN (Subquery); 

Ако желите да разумете ИН оператор са подупитом, морате да креирате две различите табеле у језику структурираних упита користећи наредбу ЦРЕАТЕ.

Следећи упит креира табелу Фацулти_Инфо у бази података:

 CREATE TABLE Faculty_Info ( Faculty_ID INT NOT NULL PRIMARY KEY, Faculty_First_Name VARCHAR (100), Faculty_Last_Name VARCHAR (100), Faculty_Dept_Id INT NOT NULL, Faculty_Address Varchar (80), Faculty_City Varchar (80), Faculty_Salary INT ); 

Следећи упит креира Департмент_Инфо табела у бази података:

 CREATE TABLE Department_Info ( Dept_Id INT NOT NULL, Dept_Name Varchar(100), Head_Id INT ); 

Следећи упити ИНСЕРТ убацују записе о факултетима у табелу Фацулти_Инфо:

ц стринг у низу
 INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Address, Faculty_City, Faculty_Salary) VALUES (1001, Arush, Sharma, 4001, 22 street, New Delhi, 20000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Address, Faculty_City, Faculty_Salary) VALUES (1002, Bulbul, Roy, 4002, 120 street, New Delhi, 38000 ); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Address, Faculty_City, Faculty_Salary) VALUES (1004, Saurabh, Sharma, 4001, 221 street, Mumbai, 45000); INSERT INTO Faculty_Info (Faculty_ID, Faculty_First_Name, Faculty_Last_NameFaculty_Dept_Id, Faculty_Address, Faculty_City, Faculty_Salary) VALUES (1005, Shivani, Singhania, 4001, 501 street, Kolkata, 42000); 

Следећи ИНСЕРТ упити убацују записе одељења у табелу Департмент_Инфо:

 INSERT INTO Department_Info (Dept_ID, Dept_Name, Head_Id) VALUES ( 4001, Arun, 1005); INSERT INTO Department_Info (Dept_ID, Dept_Name, Head_Id) VALUES ( 4002, Zayant, 1009); INSERT INTO Department_Info (Dept_ID, Dept_Name, Head_Id) VALUES ( 4003, Manish, 1007); 

Следећа СЕЛЕЦТ изјава приказује податке табеле Фацулти_Инфо:

 SELECT * FROM Faculty_Info; 

Фацулти_Ид Име_факултета Презиме_факултета Фацулти_Депт_Ид Адреса_факултета Фацулти_Цити Факултет_Плата
1001 медвед Схарма 4001 22 Стреет Нев Делхи 20000
1002 Булбул Рои 4002 120 Стреет Нев Делхи 38000
1004 Саурабх Рои 4001 221 улица Мумбаи 45000
1005 Схивани Сингханиа 4001 501 Стреет Колката 42000
1006 Авинасх Схарма 4002 12 Стреет Делхи 28000
1007 Схиам Љубиш 4003 202 Стреет Луцкнов 35000

Следећи упит приказује записе одељења из табеле Департмент_Инфо:

 SELECT * FROM Department_Info; 
Како користити ИН у СКЛ-у

Следећи упит користи ИН оператор са подупитом:

 SELECT * FROM Faculty_Info WHERE Faculty_Dept_Id IN ( Select Dept_Id FROM Department_Info WHERE Head_Id >= 1007); 

Овај упит приказује запис оних факултета чији се Депт_ИД табеле Фацулти_Инфо поклапа са Депт_Ид табеле Департмент_Инфо.

Излаз:

Фацулти_Ид Име_факултета Презиме_факултета Фацулти_Депт_Ид Адреса_факултета Фацулти_Цити Факултет_Плата
1002 Булбул Рои 4002 120 Стреет Нев Делхи 38000
1006 Авинасх Схарма 4002 12 Стреет Делхи 28000
1007 Схиам Љубиш 4003 202 Стреет Луцкнов 35000

Шта НИЈЕ ИН у СКЛ-у?

НОТ ИН је још један оператор у језику структурираних упита, који је управо супротан оператору СКЛ ИН. Омогућава вам да приступите тим вредностима из табеле, која не пролази у загради ИН оператора.

НОТ ИН оператор се може користити у СКЛ упитима ИНСЕРТ, УПДАТЕ, СЕЛЕЦТ и ДЕЛЕТЕ.

Синтакса оператора НОТ ИН:

 SELECT Column_Name_1, Column_Name_2, Column_Name_3, ......, Column_Name_N FROM Table_Name WHERE Column_Name NOT IN (Value_1, Value_2, Value_3, ......., Value_N); 

Ако желите да користите НОТ ИН оператор у СКЛ-овим изјавама, морате да пратите дате кораке у истом редоследу:

  1. Креирајте базу података у СКЛ систему.
  2. Креирајте нову табелу у бази података.
  3. Убаците податке у табелу
  4. Погледајте уметнуте податке
  5. Користите оператор НОТ ИН да видите податке.

Сада ћемо укратко објаснити сваки корак један по један са најбољим СКЛ примером:

Корак 1: Креирајте једноставну нову базу података

Следећи упит креира нови Цивил_Индустри База података на СКЛ серверу:

 CREATE Database Industry; 

Корак 2: Креирајте нову табелу

Следећи упит креира Воркер_Инфо сто у Цивил_Индустри База података:

 CREATE TABLE Worker_Info ( Worker_ID INT NOT NULL PRIMARY KEY, Worker_Name VARCHAR (100), Worker_Gender Varchar(20), Worker_Age INT NOT NULL DEFAULT 18, Worker_Address Varchar (80), Worker_Salary INT NOT NULL ); 

Корак 3: Убаците вредности

Следећи ИНСЕРТ упити убацују записе радника у табелу Воркер_Инфо:

 INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1001, Arush, Male, Agra, 35000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1002, Bulbul, Female, Lucknow, 42000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1004, Saurabh, Male, 20, Lucknow, 45000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1005, Shivani, Female, Agra, 28000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1006, Avinash, Male, 22, Delhi, 38000); INSERT INTO Worker_Info (Worker_ID, Worker_Name, Worker_Gender, Worker_Age, Worker_Address, Worker_Salary) VALUES (1007, Shyam, Male, Banglore, 20000); 

Корак 4: Прегледајте податке табеле

Следећи упит приказује податке табеле Воркер_Инфо.

 SELECT * FROM Worker_Info; 

Воркер_ИД Воркер_Наме Воркер_Гендер Воркер_Аге Воркер_Аддресс Воркер_Плата
1001 медвед Мушки 18 Агра 35000
1002 Булбул Женско 18 Луцкнов 42000
1004 Саурабх Мушки двадесет Луцкнов 45000
1005 Схивани Женско 18 Агра 28000
1006 Авинасх Мушки 22 Делхи 38000
1007 Схиам Мушки 18 Бангалор 20000

Корак 4: Користите НОТ ИН оператор

Следећи упит користи НОТ ИН оператор са нумеричким подацима:

 SELECT * FROM Worker_Info WHERE Worker_salary NOT IN (35000, 28000, 38000); 

Овај СЕЛЕЦТ упит приказује све оне раднике у излазу чија плата није прослеђена у НОТ ИН оператору.

Резултат горње изјаве је приказан у следећој табели:

Воркер_ИД Воркер_Наме Воркер_Гендер Воркер_Аге Воркер_Аддресс Воркер_Плата
1002 Булбул Женско 18 Луцкнов 42000
1004 Саурабх Мушки двадесет Луцкнов 45000
1007 Схиам Мушки 18 Бангалор 20000

Следећи упит користи логички оператор НОТ ИН са вредностима знакова или текста:

 SELECT * FROM Worker_Info WHERE Worker_Address NOT IN (Lucknow, Delhi); 

Овај упит приказује запис свих оних радника чија адреса није прослеђена у НОТ ИН оператору.

низ објеката јава

Излаз:

Воркер_ИД Воркер_Наме Воркер_Гендер Воркер_Аге Воркер_Аддресс Воркер_Плата
1001 медвед Мушки 18 Агра 35000
1005 Схивани Женско 18 Агра 28000
1007 Схиам Мушки 18 Бангалор 20000