top 90 sql interview questions
90 най-популярни въпроса и отговори за интервю за SQL:
Това са най-често срещаните и полезни въпроси за интервю за SQL както за по-свежи, така и за опитни кандидати. Основите на разширените концепции на SQL са разгледани в тази статия.
Обърнете се към тези въпроси за бърза ревизия на основните SQL концепции, преди да се явите на интервю.
Най-добри въпроси за интервю за SQL
Да започваме.
В # 1) Какво е SQL?
Отговор: Структуриран език за заявки SQL е инструмент за база данни, който се използва за създаване и достъп до базата данни за поддръжка на софтуерни приложения.
В # 2) Какво представляват таблиците в SQL?
Отговор: Таблицата е колекция от записи и нейната информация в един изглед.
В # 3) Какви са различните видове изрази, поддържани от SQL?
Отговор:
Има 3 вида SQL изрази:
а) DDL (език за дефиниране на данни): Използва се за дефиниране на структурата на базата данни като таблици. Той включва три изявления като CREATE, ALTER и DROP.
Прочетете също = >> Урок за създаване на таблици в MySQL
Някои от DDL командите са изброени по-долу:
СЪЗДАЙТЕ : Използва се за създаване на таблицата.
CREATE TABLE table_name column_name1 data_type(size), column_name2 data_type(size), column_name3 data_type(size),
ВЪЗРАСТ: Таблицата ALTER се използва за модифициране на съществуващия обект на таблица в базата данни.
ALTER TABLE table_name ADD column_name datatype
ИЛИ
ALTER TABLE table_name DROP COLUMN column_name
б) DML (език за манипулиране на данни): Тези изявления се използват за манипулиране на данните в записите. Често използваните DML изрази са INSERT, UPDATE и DELETE.
Операторът SELECT се използва като частичен DML израз, използван за избор на всички или съответните записи в таблицата.
в) DCL (език за контрол на данните): Тези изрази се използват за задаване на привилегии като GRANT и REVOKE разрешение за достъп до база данни на конкретния потребител .
В # 4) Как да използваме израза DISTINCT? Каква е ползата от него?
Отговор: Операторът DISTINCT се използва с оператора SELECT. Ако записът съдържа дублирани стойности, тогава операторът DISTINCT се използва за избор на различни стойности сред дублиращите се записи.
Синтаксис:
SELECT DISTINCT column_name(s) FROM table_name;
В # 5) Кои са различните клаузи, използвани в SQL?
Отговор:
Клауза WHERE: Тази клауза се използва за дефиниране на условието, извличане и показване само на тези записи, които отговарят на даденото условие.
Синтаксис:
SELECT column_name(s) FROM table_name WHERE condition;
Клауза GROUP BY: Той се използва с оператора SELECT за групиране на резултата от изпълнената заявка, като се използва стойността, посочена в него. Той съответства на стойността с името на колоната в таблици и съответно групира крайния резултат.
Допълнително четене => MySQL Group By Tutorial
Синтаксис:
SELECT column_name(s) FROM table_name GROUP BY column_name;
Клауза HAVING: Тази клауза се използва заедно с клаузата GROUP BY. Прилага се към всяка група резултати или целия резултат като отделна група. Той е много подобен на клаузата WHERE, но единствената разлика е, че не можете да го използвате без клаузата GROUP BY
Синтаксис:
SELECT column_name(s) FROM table_name GROUP BY column_name HAVING condition;
Клауза ORDER BY: Тази клауза се използва за определяне на реда на изхода на заявката във възходящ ред (ASC) или в низходящ (DESC). Възходящ (ASC) е зададен като по подразбиране, но низходящ (DESC) е зададен изрично.
Синтаксис:
SELECT column_name(s) FROM table_name WHERE condition ORDER BY column_name ASC|DESC;
Клауза USING: Клаузата USING се използва при работа със SQL JOIN. Използва се за проверка на равенството въз основа на колони, когато таблиците са обединени. Може да се използва вместо клаузата ON в JOIN.
Синтаксис:
SELECT column_name(s) FROM table_name JOIN table_name USING (column_name);
В # 6) Защо използваме SQL ограничения? Кои ограничения можем да използваме, докато създаваме база данни в SQL?
Отговор: Ограниченията се използват за задаване на правилата за всички записи в таблицата. Ако някакви ограничения бъдат нарушени, той може да прекрати действието, което го е причинило.
Ограниченията се дефинират при създаването на самата база данни с израза CREATE TABLE или дори след като таблицата е създадена веднъж с израза ALTER TABLE.
Има 5 основни ограничения, използвани в SQL, като
- НЕ НУЛО: Това показва, че колоната трябва да има някаква стойност и не може да бъде оставена NULL.
- УНИКАЛЕН: Това ограничение се използва, за да се гарантира, че всеки ред и колона имат уникална стойност и никоя стойност не се повтаря в друг ред или колона.
- ОСНОВЕН КЛЮЧ: Това ограничение се използва във връзка с NOT NULL и UNIQUE ограничения, като например върху една или комбинацията от повече от една колона, за да се идентифицира конкретният запис с уникална идентичност.
- ВЪНШЕН КЛЮЧ: Използва се за осигуряване на референтната цялост на данните в таблицата. Той съответства на стойността в една таблица с друга, използвайки ОСНОВЕН КЛЮЧ.
- ПРОВЕРКА: Той гарантира дали стойността в колони отговаря на посоченото условие.
В # 7) Кои са различните JOINS, използвани в SQL?
Отговор:
По време на работа върху множество таблици в SQL бази данни се използват 4 основни типа Join:
ВЪТРЕШНО ПРИСЪЕДИНЯВАНЕ: Известно е още като ПРОСТО СЪЕДИНЕНИЕ, което връща всички редове от И двете таблици, когато има поне една съвпадаща колона.
Синтаксис:
SELECT column_name(s) FROM table_name1 INNER JOIN table_name2 ON column_name1=column_name2;
Например,
В този пример имаме таблица Служител със следните данни:
Името на втората таблица е Присъединяване.
Въведете следния SQL израз:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee INNER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Ще бъдат избрани 4 записа. Резултатите са:
Служител и Поръчки таблиците имат съвпадение Клиентски номер стойност.
как да декларирам float в java -
ЛЯВО ПРИСЪЕДИНЯВАНЕ (ЛЯВО ВЪНШНО ПРИСЪЕДИНЕНИЕ): Това съединение връща всички редове от таблицата НАЛЯВО и съответстващите й редове от таблицата НАДЯСНО .
Синтаксис:
SELECT column_name(s) FROM table_name1 LEFT JOIN table_name2 ON column_name1=column_name2;
Например,
В този пример имаме таблица Служител със следните данни:
Името на втората таблица е Присъединяване.
Въведете следния SQL израз:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee LEFT OUTER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Ще бъдат избрани 4 записа. Ще видите следните резултати:
ДЯСНО ПРИСЪЕДИНЯВАНЕ (ДЯСНО ВЪНШНО СЪЕДИНЕНИЕ): Това обединяване връща всички редове от таблицата НАДЯСНО и съответстващите й редове от таблицата НАЛЯВО .
Синтаксис:
SELECT column_name(s) FROM table_name1 RIGHT JOIN table_name2 ON column_name1=column_name2;
Например,
В този пример имаме таблица Служител със следните данни:
Името на втората таблица е Присъединяване.
Въведете следния SQL израз:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee RIGHT JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Изход:
Emp_id | Дата на присъединяване |
---|---|
E0012 | 2016/04/18 |
E0013 | 2016/04/19 |
E0014 | 01.05.2016 г. |
ПЪЛНО ПРИСЪЕДИНЯВАНЕ (ПЪЛНО ВЪНШНО ПРИСЪЕДИНЯВАНЕ): Това обединяване връща всички резултати, когато има съвпадение или в таблицата НАДЯСНО или в таблицата НАЛЯВО .
Синтаксис:
SELECT column_name(s) FROM table_name1 FULL OUTER JOIN table_name2 ON column_name1=column_name2;
Например,
В този пример имаме таблица Служител със следните данни:
Името на втората таблица е Присъединяване.
Въведете следния SQL израз:
SELECT Employee.Emp_id, Joining.Joining_Date FROM Employee FULL OUTER JOIN Joining ON Employee.Emp_id = Joining.Emp_id ORDER BY Employee.Emp_id;
Ще бъдат избрани 8 записа. Това са резултатите, които трябва да видите.
ДА СЕ Прочетете също> MySQL Присъединете се към урок
В # 8) Какво представляват транзакциите и техните контроли?
Отговор: Транзакцията може да бъде определена като задача за последователност, която се изпълнява в бази данни по логичен начин, за да се получат определени резултати. Операции като Създаване, актуализиране, изтриване на записи, извършени в базата данни, идват от транзакции.
С прости думи можем да кажем, че транзакцията означава група SQL заявки, изпълнени в записи на база данни.
Има 4 контроли за транзакции като
- АНГАЖИРАНЕ : Използва се за запазване на всички промени, направени чрез транзакцията.
- ВРЪЩАНЕ : Използва се за връщане на транзакцията. Всички промени, направени от транзакцията, се връщат обратно и базата данни остава както преди.
- ЗАДАЙТЕ СДЕЛКА : Задайте името на транзакцията.
- SAVEPOINT: Използва се за определяне на точката, в която транзакцията трябва да бъде върната обратно.
В # 9) Какви са свойствата на транзакцията?
Отговор: Свойствата на транзакцията са известни като ACID свойства. Това са:
- Атомност : Осигурява пълнотата на всички извършени транзакции. Проверява дали всяка транзакция е завършена успешно или не. В противен случай транзакцията се прекъсва в точката на отказ и предишната транзакция се връща обратно в първоначалното си състояние, тъй като промените са отменени.
- Последователност : Гарантира, че всички промени, направени чрез успешни транзакции, се отразяват правилно в базата данни.
- Изолация : Гарантира, че всички транзакции се извършват независимо и промените, направени от една транзакция, не се отразяват върху други.
- Трайност : Гарантира, че промените, направени в базата данни с извършени транзакции, продължават, както и след системна повреда.
В # 10) Колко агрегирани функции са налични в SQL?
Отговор: SQL агрегираните функции определят и изчисляват стойности от множество колони в таблица и връщат една стойност.
В SQL има 7 обобщени функции:
- AVG (): Връща средната стойност от посочени колони.
- БРОЯ(): Връща броя на редовете на таблицата.
- МАКС. (): Връща най-голямата стойност сред записите.
- MIN (): Връща най-малката стойност сред записите.
- SUM (): Връща сумата от посочените стойности на колони.
- ПЪРВО (): Връща първата стойност.
- ПОСЛЕДНО (): Връща последната стойност.
В # 11) Какво представляват скаларните функции в SQL?
Отговор: Скаларните функции се използват за връщане на единична стойност въз основа на входните стойности.
Скаларните функции са както следва:
- UCASE (): Преобразува посоченото поле в главни букви.
- LCASE (): Преобразува посоченото поле с малки букви.
- MID (): Извлича и връща символ от текстовото поле.
- ФОРМАТ (): Задава формата на показване.
- LEN (): Указва дължината на текстовото поле.
- КРЪГЪЛ(): Закръглява стойността на десетичното поле до число.
В # 12) Какво представляват тригерите ?
Отговор: Задействанията в SQL е вид съхранени процедури, използвани за създаване на отговор на конкретно действие, извършено върху таблицата, като INSERT, UPDATE или DELETE. Можете да извиквате тригери изрично в таблицата в базата данни.
Action и Event са два основни компонента на SQL тригерите. Когато се извършват определени действия, събитието възниква в отговор на това действие.
Синтаксис:
CREATE TRIGGER name BEFORE (event (OR..)} ON table_name (FOR (EACH) ROW) EXECUTE PROCEDURE functionname {arguments}
В # 13) Какво е Изглед в SQL?
Отговор: Изгледът може да бъде дефиниран като виртуална таблица, която съдържа редове и колони с полета от една или повече таблици.
С синтаксис:
CREATE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
В # 14) Как можем да актуализираме изгледа?
Отговор: SQL CREATE и REPLACE могат да се използват за актуализиране на изгледа.
Изпълнете заявката по-долу, за да актуализирате създадения изглед.
Синтаксис:
CREATE OR REPLACE VIEW view_name AS SELECT column_name(s) FROM table_name WHERE condition
В # 15) Обяснете работата на SQL привилегиите?
Отговор: Командите SQL GRANT и REVOKE се използват за внедряване на привилегии в SQL множество потребителски среди. Администраторът на базата данни може да предостави или отмени привилегии на или от потребители на обекти на база данни, като използва команди като SELECT, INSERT, UPDATE, DELETE, ALL и др.
GRANT Command : Тази команда се използва за предоставяне на достъп до база данни на потребители, различни от администратора.
Синтаксис:
GRANT privilege_name ON object_name TO PUBLIC (WITH GRANT OPTION);
В горния синтаксис опцията GRANT показва, че потребителят може да предостави достъп и на друг потребител.
Команда REVOKE : Тази команда се използва за осигуряване на отказ на база данни или премахване на достъп до обекти на база данни.
Синтаксис:
REVOKE privilege_name ON object_name FROM PUBLIC;
В # 16) Колко видове привилегии са налични в SQL?
Отговор: Има два вида привилегии, използвани в SQL, като
- Системна привилегия: Системните привилегии се занимават с обекта от определен тип и предоставят на потребителите правото да извършват едно или повече действия върху него. Тези действия включват изпълнение на административни задачи, ALTER ANY INDEX, ALTER ANY CACHE GROUP CREATE / ALTER / DELETE TABLE, CREATE / ALTER / DELETE VIEW и т.н.
- Привилегия на обекта: Това позволява да се извършват действия върху обект или обект на друг потребител (и), а именно. таблица, изглед, индекси и др. Някои от привилегиите на обекта са EXECUTE, INSERT, UPDATE, DELETE, SELECT, FLUSH, LOAD, INDEX, REFERENCES и др.
В # 17) Какво е SQL инжектиране?
Отговор: SQL Injection е вид техника за атака на база данни, при която злонамерени SQL изрази се вмъкват в полето за въвеждане на база данни по начин, който след като бъде изпълнен, базата данни е изложена на атакуващ за атаката. Тази техника обикновено се използва за атака на управлявани от данни приложения, за да имат достъп до чувствителни данни и да изпълняват административни задачи в бази данни.
Например,
SELECT column_name(s) FROM table_name WHERE condition;
В # 18) Какво представлява SQL Sandbox в SQL Server?
Отговор: SQL Sandbox е безопасно място в SQL сървърната среда, където се изпълняват ненадеждни скриптове. Има 3 вида SQL пясъчник:
- Sandbox за безопасен достъп: Тук потребителят може да извършва SQL операции като създаване на съхранени процедури, тригери и т.н., но не може да има достъп до паметта, както и да създава файлове.
- Пясъчник за външен достъп: Потребителите имат достъп до файлове, без да имат право да манипулират разпределението на паметта.
- Небезопасен пясъчник за достъп: Това съдържа ненадеждни кодове, където потребителят може да има достъп до паметта.
В # 19) Каква е разликата между SQL и PL / SQL?
Отговор: SQL е език за структурирани заявки за създаване и достъп до бази данни, докато PL / SQL идва с процедурни концепции за програмни езици.
В # 20) Каква е разликата между SQL и MySQL?
Отговор: SQL е език за структурирани заявки, който се използва за манипулиране и достъп до релационната база данни. От друга страна, самият MySQL е релационна база данни, която използва SQL като стандартен език на базата данни.
В # 21) Каква е ползата от функцията NVL?
Отговор: Функцията NVL се използва за преобразуване на нулевата стойност в нейната действителна стойност.
В # 22) Какъв е декартовият продукт на таблицата?
Отговор: Резултатът от Cross Join се нарича декартов продукт. Той връща редове, комбиниращи всеки ред от първата таблица с всеки ред от втората таблица. Например, ако обединим две таблици с 15 и 20 колони, декартовото произведение на две таблици ще бъде 15 × 20 = 300 реда.
В # 23) Какво имате предвид под подзаявка?
Отговор: Заявка в рамките на друга заявка се нарича подзаявка. Подзаявка се нарича вътрешна заявка, която връща изхода, който трябва да се използва от друга заявка.
В # 24) Колко оператора за сравнение на редове се използват при работа с подзаявка?
Отговор: Има 3-редови оператори за сравнение, които се използват в подзаявки като IN, ANY и ALL.
В # 25) Каква е разликата между клъстерираните и неклъстерираните индекси?
Отговор: Разликите между двете са както следва:
- Една таблица може да има само един клъстериран индекс, но множество неклъстерирани индекси.
- Клъстерираните индекси могат да се четат бързо, а не клъстерираните индекси.
- Клъстерираните индекси съхраняват физически данни в таблицата или изгледа, докато неклъстерираните индекси не съхраняват данни в таблицата, тъй като тя има отделна структура от реда с данни.
В # 26) Каква е разликата между DELETE и TRUNCATE?
Отговор: Разликите са:
- Основната разлика в двете е командата DELETE е команда DML, а командата TRUNCATE е DDL.
- Командата DELETE се използва за изтриване на определен ред от таблицата, докато командата TRUNCATE се използва за премахване на всички редове от таблицата.
- Можем да използваме командата DELETE с клаузата WHERE, но не можем да използваме командата TRUNCATE с нея.
В # 27) Каква е разликата между DROP и TRUNCATE?
Отговор: TRUNCATE премахва всички редове от таблицата, които не могат да бъдат извлечени обратно, DROP премахва цялата таблица от базата данни и също не може да бъде извлечена обратно.
Въпрос # 28) Как да напиша заявка, за да покажа подробностите за ученик от таблица Студенти, чиято
име започнете с K?
Отговор: Запитване:
SELECT * FROM Student WHERE Student_Name like ‘K%’;
Тук се използва оператор ‘като’ за извършване на съвпадение на шаблони.
В # 29) Каква е разликата между вложените подзаявки и корелираните подзаявки?
Отговор: Подзаявката в друга подзаявка се нарича вложена подзаявка. Ако изходът на подзаявка зависи от стойностите на колоните на родителската таблица за заявки, тогава заявката се нарича Correlated Subquery.
SELECT adminid(SELEC Firstname+' '+Lastname FROM Employee WHERE empid=emp. adminid)AS EmpAdminId FROM Employee;
Резултатът от заявката са данните за служител от таблицата Служител.
В # 30) Какво е нормализация? Колко форми за нормализация има?
Отговор: Нормализирането се използва за организиране на данните по такъв начин, че излишъкът на данните никога да не възникне в базата данни и да се избегнат аномалии при вмъкване, актуализиране и изтриване.
Има 5 форми на нормализация:
- Първа нормална форма (1NF): Той премахва всички дублиращи се колони от таблицата. Създава таблица за свързани данни и идентифицира уникални стойности на колони.
- Първа нормална форма (2NF): Следва 1NF и създава и поставя подмножества от данни в отделна таблица и определя връзката между таблици с помощта на първичния ключ.
- Трета нормална форма (3NF): Следва 2NF и премахва онези колони, които не са свързани чрез първичния ключ.
- Четвърта нормална форма (4NF): Следва 3NF и не дефинира многозначни зависимости. 4NF е известен още като BCNF.
В # 31) Какво представлява връзката? Колко видове връзки има?
Отговор: Връзката може да бъде дефинирана като връзка между повече от една таблица в базата данни.
Има 4 типа взаимоотношения:
- Връзка един към един
- Връзка много към едно
- Връзка много към много
- Връзка едно към много
В # 32) Какво имате предвид под съхранени процедури? Как да го използваме?
Отговор: Съхранената процедура е колекция от SQL изрази, които могат да се използват като функция за достъп до базата данни. Можем да създадем тези съхранени процедури по-рано, преди да го използваме и да ги изпълним навсякъде, където се изисква, като приложим някаква условна логика към него. Съхранените процедури също се използват за намаляване на мрежовия трафик и подобряване на производителността.
Синтаксис:
CREATE Procedure Procedure_Name ( //Parameters ) AS BEGIN SQL statements in stored procedures to update/retrieve records END
Въпрос # 33) Посочете някои свойства на релационните бази данни?
Отговор: Свойствата са както следва:
- В релационните бази данни всяка колона трябва да има уникално име.
- Последователността от редове и колони в релационни бази данни е незначителна.
- Всички стойности са атомни и всеки ред е уникален.
В # 34) Какво представляват вложени тригери?
Отговор: Тригерите могат да внедрят логика за модифициране на данни чрез използване на изрази INSERT, UPDATE и DELETE. Тези тригери, които съдържат логика за модифициране на данни и намират други тригери за модификация на данни, се наричат вложени тригери.
В # 35) Какво е курсор?
Отговор: Курсорът е обект на база данни, който се използва за манипулиране на данни по ред от ред.
Курсорът следва стъпки, както е дадено по-долу:
- Декларирайте курсора
- Отворете курсора
- Извличане на реда от курсора
- Обработете реда
- Затворете курсора
- Разпределете курсора
Q # 36) Какво е Collation?
Отговор: Сравняването е набор от правила, които проверяват как се сортират данните чрез сравняването им. Такива като символните данни се съхраняват, като се използва правилна последователност от символи, заедно с чувствителността на буквите, типа и акцента.
В # 37) Какво трябва да проверим при тестване на база данни?
Отговор: При тестване на база данни трябва да се тества следното:
- Свързаност с база данни
- Проверка на ограниченията
- Задължително поле за приложение и неговия размер
- Извличане и обработка на данни с DML операции
- Съхранени процедури
- Функционален поток
В # 38) Какво представлява тестването на бяла кутия на базата данни?
Отговор: Тестването на Бялата кутия на базата данни включва:
- Съвместимост на базата данни и свойства на ACID
- Задействания на база данни и логически изгледи
- Покритие на решенията, покритие на условията и покритие на декларацията
- Таблици на базата данни, модел на данни и схема на базата данни
- Правила за референтна цялост
Въпрос # 39) Какво е тестване на черна кутия на базата данни?
Отговор: Тестването на базата данни Black Box включва:
- Картографиране на данни
- Данните се съхраняват и извличат
- Използване на техники за тестване на черната кутия като разделяне на еквивалентност и анализ на гранична стойност (BVA)
В # 40) Какво представляват индексите в SQL?
Отговор: Индексът може да бъде определен като начин за по-бързо извличане на данните. Можем да дефинираме индекси с помощта на CREATE изрази.
Синтаксис:
CREATE INDEX index_name ON table_name (column_name)
Освен това можем да създадем и уникален индекс, използвайки следния синтаксис:
CREATE UNIQUE INDEX index_name ON table_name (column_name)
АКТУАЛИЗИРАНЕ: Добавихме още няколко кратки въпроса за практика.
В # 41) Какво означава SQL?
Отговор: SQL означава език за структурирани заявки .
В # 42) Как да изберем всички записи от таблицата?
Отговор: За да изберем всички записи от таблицата, трябва да използваме следния синтаксис:
Select * from table_name;
В # 43) Определете присъединяването и назовете различни видове обединения?
Отговор: Ключовата дума Join се използва за извличане на данни от две или повече свързани таблици. Той връща редове, където има поне едно съвпадение и в двете таблици, включени в присъединяването. Прочетете повече тук .
Тип присъединявания са:
как да прегледате бин файл
- Право присъединяване
- Външно присъединяване
- Пълно присъединяване
- Кръстосано присъединяване
- Самостоятелно присъединяване.
В # 44) Какъв е синтаксисът за добавяне на запис към таблица?
Отговор: За добавяне на запис в таблица се използва INSERT синтаксис.
Например,
INSERT into table_name VALUES (value1, value2..);
В # 45) Как да добавите колона към таблица?
Отговор: За да добавите друга колона в таблицата, използвайте следната команда:
ALTER TABLE table_name ADD (column_name);
Препоръчително четене = >> Как да добавяне на колона към таблица в MySQL
Q # 46) Дефинирайте оператора SQL DELETE.
Отговор: DELETE се използва за изтриване на ред или редове от таблица въз основа на посоченото условие.
Основният синтаксис е както следва:
DELETE FROM table_name WHERE
Q # 47) Определете COMMIT?
Отговор: COMMIT запазва всички промени, направени от DML изрази.
В # 48) Какво е първичният ключ?
Отговор: Първичен ключ е колона, чиито стойности уникално идентифицират всеки ред в таблица. Стойностите на първичния ключ никога не могат да бъдат използвани повторно.
В # 49) Какво представляват външните ключове?
Отговор: Когато полето на първичния ключ на таблица се добавя към свързани таблици, за да се създаде общото поле, което свързва двете таблици, то извиква външен ключ в други таблици. Ограниченията на външния ключ налагат референтна цялост.
В # 50) Какво е ПРОВЕРКА Ограничение?
Отговор: Ограничението CHECK се използва за ограничаване на стойностите или типа данни, които могат да се съхраняват в колона. Те се използват за налагане на целостта на домейна.
Въпрос # 51) Възможно ли е таблица да има повече от един външен ключ?
Отговор: Да, таблица може да има много външни ключове, но само един първичен ключ.
В # 52) Какви са възможните стойности за полето с данни BOOLEAN?
Отговор: За поле с данни BOOLEAN са възможни две стойности: -1 (вярно) и 0 (невярно).
В # 53) Какво представлява съхранената процедура?
Отговор: Съхранената процедура е набор от SQL заявки, които могат да вземат вход и да изпратят обратно изход.
В # 54) Какво е идентичност в SQL?
Отговор: Колона за идентичност, в която SQL автоматично генерира числови стойности. Можем да дефинираме начална и инкрементна стойност на колоната за идентичност.
В # 55) Какво е нормализация?
Отговор: Процесът на проектиране на таблици за минимизиране на излишъка на данни се нарича нормализиране. Трябва да разделим база данни на две или повече таблици и да дефинираме връзката между тях.
В # 56) Какво е тригер?
Отговор: Тригерът ни позволява да изпълним партида SQL код, когато настъпи събитие в таблицата (командите INSERT, UPDATE или DELETE се изпълняват срещу конкретна таблица).
В # 57) Как да изберем произволни редове от таблица?
Отговор: С помощта на клауза SAMPLE можем да избираме произволни редове.
Например,
SELECT * FROM table_name SAMPLE(10);
В # 58) Кой TCP / IP порт работи на SQL Server?
Отговор: По подразбиране SQL Server работи на порт 1433.
В # 59) Напишете SQL SELECT заявка, която връща всяко име само веднъж от таблица?
Отговор: За да получим резултата като всяко име само веднъж, трябва да използваме ключовата дума DISTINCT.
SELECT DISTINCT name FROM table_name;
В # 60) Обяснете DML и DDL?
Отговор: DML е съкращение от Data Manipulation Language. INSERT, UPDATE и DELETE са DML изрази.
DDL означава език за дефиниране на данни. CREATE, ALTER, DROP, RENAME са DDL изрази.
В # 61) Можем ли да преименуваме колона в изхода на SQL заявката?
Отговор: Да, използвайки следния синтаксис, можем да направим това.
SELECT column_name AS new_name FROM table_name;
В # 62) Дайте реда на SQL SELECT?
Отговор: Редът на клаузите на SQL SELECT е: SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY. Задължителни са само клаузите SELECT и FROM.
Въпрос # 63) Да предположим, че студентската колона има две колони, Име и Марки. Как да получите имена и марки на първите трима ученици.
Отговор: ИЗБЕРЕТЕ Име, марки ОТ студент s1 където 3<= (SELECT COUNT(*) FROM Students s2 WHERE s1.marks = s2.marks)
В # 64) Какво представляват SQL коментарите?
Отговор: SQL коментарите могат да бъдат вмъкнати чрез добавяне на две последователни тирета (-).
В # 65) Разлика между командите TRUNCATE, DELETE и DROP?
Отговор:
- ИЗТРИЙ премахва някои или всички редове от таблица въз основа на условието. Може да се върне обратно.
- ПРЕКРАТЕТЕ премахва ВСИЧКИ редове от таблица чрез премахване на разпределението на страниците в паметта. Операцията не може да бъде върната обратно
- ИЗПУСКАЙТЕ команда премахва таблица от базата данни напълно.
В # 66) Какви са свойствата на транзакцията?
Отговор: Обикновено тези свойства се наричат ACID свойства. Те са:
- Атомност
- Последователност
- Изолация
- Трайност.
Q # 67) Какво имате предвид под ROWID?
Отговор: Това е 18-символна псевдо колона, прикрепена с всеки ред на таблица.
Q # 68) Определете UNION, MINUS, UNION ALL, INTERSECT?
Отговор:
- МИНУС - връща всички отделни редове, избрани от първата заявка, но не и от втората.
- СЪЮЗ - връща всички отделни редове, избрани от която и да е заявка
- СЪЮЗ ВСИЧКИ - връща всички редове, избрани от която и да е заявка, включително всички дубликати.
- ПРЕКРЕСТИ - връща всички отделни редове, избрани от двете заявки.
В # 69) Какво е транзакция?
Отговор: Транзакцията е последователност от код, която работи срещу база данни. Тя отвежда базата данни от едно последователно състояние в друго.
Q # 70) Каква е разликата между UNIQUE и PRIMARY KEY ограничения?
Отговор: Разликите са както следва:
- Таблицата може да има само един ОСНОВЕН КЛЮЧ, докато може да има произволен брой УНИКАЛНИ ключове.
- Първичният ключ не може да съдържа Null стойности, докато уникалният ключ може да съдържа Null стойности.
В # 71) Какво представлява съставният първичен ключ?
Отговор: Първичният ключ, създаден в повече от една колона, се нарича композитен първичен ключ.
В # 72) Какво е индекс?
Отговор: Индексът е специална структура, свързана с таблица, за да ускори изпълнението на заявките. Индексът може да бъде създаден в една или повече колони на таблица.
В # 73) Какво представлява подзаявката?
Отговор: Подзаявката е подмножество от оператори за избор, чиито върнати стойности се използват в условията за филтриране на основната заявка.
В # 74) Какво имате предвид под оптимизация на заявката?
Отговор: Оптимизацията на заявките е процес, при който системата от бази данни сравнява различни стратегии за заявки и избира заявката с най-малко разходи.
Q # 75) Какво е Collation?
Отговор: Набор от правила, които определят как се съхраняват данните, как може да се третира чувствителността към регистъра и символа на Кана и т.н.
В # 76) Какво представлява референтната почтеност?
Отговор: Набор от правила, които ограничават стойностите на една или повече колони от таблиците въз основа на стойностите на първичния ключ или уникалния ключ на посочената таблица.
Q # 77) Каква е функцията Case?
Отговор: Case улеснява логиката if-then-else в SQL. Той оценява списък с условия и връща един от множеството възможни изрази на резултатите.
В # 78) Определете временна таблица?
Отговор: Временната таблица е временна структура за съхранение, която временно съхранява данните.
В # 79) Как можем да избегнем дублирането на записи в заявка?
Отговор: Чрез използването на ключовата дума DISTINCT може да се избегне дублиране на записи в заявка.
Въпрос # 80) Обяснете разликата между Преименуване и Псевдоним?
Отговор: Преименуване е постоянно име, дадено на таблица или колона, докато Alias е временно име, дадено на таблица или колона.
В # 81) Какво е изглед?
Отговор: Изгледът е виртуална таблица, която съдържа данни от една или повече таблици. Изгледите ограничават достъпа до данни на таблицата, като избират само необходимите стойности и улесняват сложните заявки.
В # 82) Какви са предимствата на Views?
Отговор: Предимствата на изгледите са:
- Изгледите ограничават достъпа до данните, тъй като изгледът може да показва селективни колони от таблицата.
- Изгледите могат да се използват за направяне на прости заявки за извличане на резултатите от сложни заявки. Например, изгледите могат да се използват за заявка на информация от множество таблици, без потребителят да знае.
В # 83) Избройте различните привилегии, които потребителят може да предостави на друг потребител?
Отговор: ИЗБЕРЕТЕ, СВЪРЖЕТЕ, РЕСУРСИ.
В # 84) Какво е схема?
Отговор: Схемата е колекция от обекти на база данни на потребител.
В # 85) Какво е таблица?
Отговор: Таблицата е основната единица за съхранение на данни в системата за управление на базата данни. Данните от таблицата се съхраняват в редове и колони.
В # 86) Изгледът съдържа ли данни?
Отговор: Не, изгледите са виртуални структури.
В # 87) Може ли изглед въз основа на друг изглед?
Отговор: Да, изглед се основава на друг изглед.
В # 88) Каква е разликата между клаузата HAVING и клаузата WHERE?
Отговор: И двете посочват условие за търсене, но клаузата Има се използва само с оператора SELECT и обикновено се използва с клаузата GROUP BY.
Ако не се използва клауза GROUP BY, след като се държи като клауза WHERE.
В # 89) Каква е разликата между местните и глобалните временни таблици?
Отговор: Ако е дефинирана в съставен оператор, локална временна таблица съществува само за времето на този оператор, но глобална временна таблица съществува постоянно в DB, но нейните редове изчезват, когато връзката се затвори.
Q # 90) Какво е CTE?
Отговор: CTE или израз на обща таблица е израз, който съдържа временен набор от резултати, който е дефиниран в SQL израз.
Заключение
SQL е съществен компонент на системата от бази данни. Наличието на добре запознати с базата данни заедно с SQL концепции определено ще бъде от полза за пробиване на интервюто за съответния профил.
Освен някои основни концепции, има някои скрити факти, които остават невидими и влияят на представянето ви в интервюто. В този урок се опитах да си припомня някои от онези понятия, които изглеждат малки, но не бива да се пренебрегват.
Надявам се в тази статия да намерите отговори на най-често задаваните въпроси за интервю за SQL. Познаването на SQL е задължително за всеки тестер и тази статия ще ви помогне при подготовката на интервюто.
Допълнително четене => Всичко за тестване на база данни
Препоръчително четене
- Интервюирайте въпроси и отговори
- Водещи въпроси за интервюта за Oracle: Въпроси за Oracle Basic, SQL, PL / SQL
- 30 най-важни PL / SQL интервюта Въпроси и отговори през 2021 г.
- Въпроси и отговори за интервю за ETL тестване
- Водещи въпроси и отговори за интервю за Teradata
- Някои сложни ръчни тестови въпроси и отговори
- 25 най-добри пъргави тестови интервюта Въпроси и отговори
- Въпроси за интервю с Spock с отговори (най-популярни)