20 najczęściej zadawanych pytań i odpowiedzi dotyczących zapytań SQL [dla nowicjuszy i doświadczonych]

Opublikowany: 2021-07-14

Uczestniczysz w rozmowie kwalifikacyjnej SQL i zastanawiasz się, jakie są wszystkie pytania i dyskusje, przez które przejdziesz? Zanim weźmiesz udział w rozmowie kwalifikacyjnej SQL, lepiej mieć wyobrażenie o typach pytań do rozmowy kwalifikacyjnej SQL , abyś mógł mentalnie przygotować na nie odpowiedzi.

Aby Ci pomóc, stworzyłem najlepszy przewodnik z pytaniami i odpowiedziami do wywiadu SQL, aby zrozumieć głębię i prawdziwe intencje pytań do wywiadu SQL. Zacznijmy.

Structured Query Language (SQL) to popularny i szeroko stosowany język programowania do zarządzania, manipulowania i wykonywania zapytań w relacyjnych bazach danych. Chociaż SQL nie jest do końca najszybszym językiem do komunikacji z relacyjnymi bazami danych, jest niewątpliwie najbardziej wydajnym sposobem obsługi ustrukturyzowanych danych.

W porównaniu z tradycyjnymi interfejsami API do odczytu i zapisu, takimi jak ISAM lub VSAM , SQL zapewnia dwie podstawowe korzyści:

  • Umożliwia dostęp do wielu rekordów za pomocą jednego polecenia.
  • Eliminuje potrzebę określania, jak uzyskać dostęp do rekordu (czy używać indeksu) z bazy danych.

Zapytanie SQL to pytanie lub żądanie dostępu do danych przechowywanych w bazie danych. Baza danych przechowuje informacje w formacie tabelarycznym. Zawiera więc wiersze i kolumny. Podczas gdy pola bazy danych tworzą kolumny, które kierują bazą danych odnośnie tego, jakie informacje może przechowywać, wiersze zawierają dane. Oto przykładowy zestaw danych o nazwie „tblAlbum”, który pozwala spojrzeć na sprawy z odpowiedniej perspektywy:

Źródło

Utwórzmy zapytanie SQL przy użyciu tych przykładowych danych. Skupimy się na wybieraniu tylko tych albumów, które mają ocenę 9 lub wyższą. Tak więc zasadniczo prosimy zapytanie o utworzenie listy tytułów albumów z bazy danych o ocenie równej lub większej niż 9. Aby uzyskać pożądaną odpowiedź, użyjesz odpowiednich słów kluczowych.

Pytania i odpowiedzi do wywiadu sql

Słowa kluczowe w tym scenariuszu to – SELECT (podyktowanie pobrania informacji z bazy danych), FROM (konkretna tabela zawierająca te dane) oraz WHERE (podyktowanie kryteriów dostępu do informacji). Gdy użyjesz tych słów kluczowych, Twoje zapytanie SQL będzie wyglądać tak:

SELECT albumTitle FROM tblAlbumy

GDZIE ocena >= 9;

W ten sposób wybierasz (SELECT) dane z (FROM) tabeli „tblAlbums”, gdzie (WHERE) ocena albumu wynosi 9 lub więcej. Instrukcja WHERE może być bardzo prosta lub nadmiernie złożona, jeśli w grę wchodzi znaczna ilość zagnieżdżonej logiki. Po uruchomieniu zapytania otrzymasz następujący wynik:

tytuł albumu

Symfonia d-moll

Serce poety

Teraz, gdy masz już podstawową wiedzę o tym, czym są zapytania SQL i jak działają, sprawdźmy dwadzieścia pytań do wywiadu zapytań SQL!

Zanim zaczniemy z pytaniami dotyczącymi wywiadu kwerendy SQL, sprawdź te tabele referencyjne – nasze zapytania będą oparte na tych tabelach.

Tabela informacji o pracowniku:

EmpID EmpFname EmpLname dział Projekt Adres DOB Płeć
1 Rohit Gupta Admin P1 Delhi 02.12.1979 Męski
2 Rahul Mahajana Admin P2 Bombaj 10.10.1986 Męski
3 Sonia Banerjee HR P3 Pune 05/06/1983 Płeć żeńska
4 Ankita Kapoor HR P4 Ćennaj 28.11.1983 Płeć żeńska
5 Swati Garg HR P5 Delhi 06/04/1991 Płeć żeńska

Tabela stanowiska pracownika:

EmpID Stanowisko pracy Data dołączenia Pensja
1 Wykonawczy 01.04.2020 75000
2 Menedżer 03.04.2020 500000
3 Menedżer 02.04.2020 150000
2 Oficer 02.04.2020 90000
1 Menedżer 03.04.2020 300000

Pytania i odpowiedzi dotyczące zapytania SQL

  1. Napisz zapytanie, aby uzyskać nazwę EmpFname z tabeli EmployeeInfo wielkimi literami, używając aliasu jako EmpName.

Zapytanie dla tego warunku to:

SELECT UPPER (NazwiskoPracownika) AS NazwaPracownika FROM Informacje opracowniku;

  1. Napisz zapytanie, aby uzyskać liczbę pracowników zatrudnionych w dziale „HR”.

Oto zapytanie dla tego żądania:

SELECT COUNT(*) FROM EmployeeInfo WHERE Dział = 'HR';

  1. Jakie zapytanie napiszesz, aby pobrać aktualną datę?

Aby pobrać aktualną datę, możesz napisać to zapytanie na serwerze SQL:

WYBIERZ POBIERZDATĘ();

Aby pobrać aktualną datę, możesz napisać to zapytanie w MySQL:

WYBIERZ DATĘSYST();

  1. Napisz zapytanie, aby pobrać tylko nazwę miejsca (ciąg przed nawiasami) z kolumny Adres w tabeli Informacje o pracowniku.

Możesz użyć funkcji MID w MySQL, aby utworzyć następujące zapytanie:

SELECT MID(Adres, 0, LOCATE ('(',Adres)) FROMInformacje opracowniku;

Możesz użyć SUBSTRING, aby utworzyć następujące zapytanie:

SELECT SUBSTRING(Adres, 1, CHARINDEX('(',Adres)) FROMInformacjaPracownicza;

Przeczytaj więcej: SQL dla nauki o danych: dlaczego SQL

  1. Napisz zapytanie, aby utworzyć nową tabelę, której dane i struktura są kopiowane z innej tabeli.

Możesz użyć polecenia SELECT INTO, aby utworzyć następujące zapytanie:

SELECT * INTO NewTable FROM EmployeeInfo WHERE 1 = 0;

Możesz użyć polecenia CREATE w MySQL, aby utworzyć następujące zapytanie:

CREATE TABLE NewTable AS SELECT * FROM EmployeeInfo;

  1. Napisz zapytanie, aby wyświetlić nazwiska pracowników rozpoczynające się od litery „S”.

To jest zapytanie, które musisz napisać, aby uzyskać nazwiska pracowników, których imiona zaczynają się na „S”:

WYBIERZ * FROM Informacje o pracowniku GDZIE EmpFname LIKE 'S%';

  1. Napisz zapytanie, aby pobrać pierwsze N ​​rekordów.

Możesz napisać zapytanie za pomocą polecenia TOP w SQL Server:

WYBIERZ TOP N * Z Stanowisko Pracownika ZAMÓW WEDŁUG WYNAGRODZENIA DESC;

Możesz również utworzyć zapytanie za pomocą polecenia LIMIT w MySQL:

WYBIERZ * Z EmpPosition ZAMÓW WG Wynagrodzenia OBNIŻ LIMIT N;

  1. Napisz zapytanie, aby uzyskać odpowiednie rekordy z tabeli EmployeeInfo uporządkowane według Działu w porządku rosnącym i EmpLname w porządku malejącym.

W tym celu należy użyć instrukcji ORDER BY w SQL;

WYBIERZ * FROM EmployeeInfo ZAMÓW WG Dział asc, EmpFname opis;

  1. Napisz zapytanie, aby uzyskać dane pracowników, których EmpFname kończy się na 'A'.

Możesz użyć operatora LIKE w SQL, aby utworzyć zapytanie dotyczące tego problemu:

WYBIERZ * Z Informacje o pracowniku GDZIE Nazwa pracownika LIKE '____a';

10.Utwórz zapytanie, aby pobrać dane pracowników, których adres to „DELHI”.

WYBIERZ * Z Informacje o pracowniku GDZIE Adres LIKE 'DELHI%';

Przeczytaj: 9 najlepszych narzędzi do analizy danych w 2020 r.

  1. Napisz zapytanie, aby pobrać wszystkich pracowników, którzy również zajmują stanowisko kierownicze.

Żaden przewodnik dotyczący pytań i odpowiedzi dotyczących wywiadu SQL nie będzie kompletny bez tego pytania.

Oto zapytanie o pracowników zajmujących stanowiska kierownicze:

SELECT E.PracFnazwisko, E.PracowaNazwisko, P.PracaPozycja

OD EmployeeInfo E INNER JOIN EmployeePosition P ON

E.EmpID = P.EmpID I P.EmpPosition IN („Menedżer”);

  1. Utwórz zapytanie, aby wygenerować pierwszy i ostatni rekord z tabeli EmployeeInfo.

Jedno z najczęstszych pytań podczas rozmowy kwalifikacyjnej SQL.

Oto zapytanie do pobrania pierwszego rekordu z tabeli EmployeeInfo:

SELECT * FROMInformacjaPracownicza WHERE EmpID = (SELECT MIN(IdentyfikatorPracownika) FROMInformacjaPracownicza);

Oto zapytanie do pobrania ostatniego rekordu z tabeli EmployeeInfo:

SELECT * FROMInformacjaPracownicza WHERE EmpID = (SELECT MAX(IdentyfikatorPracownika) FROMInformacjaPracownicza);

  1. Utwórz zapytanie, aby sprawdzić, czy wartość przekazana do zapytania jest zgodna z formatem daty tabel EmployeeInfo i EmployeePosition.

Możesz użyć funkcji IsDate() w SQL, aby sprawdzić, czy przekazana wartość jest zgodna z określonym formatem, czy nie. Zwraca odpowiednio 1 (prawda) lub 0 (fałsz). Oto jak będzie wyglądać zapytanie:

WYBIERZ CZY.DATA('01.04.2020′) JAKO „MM/DD/RR”;

Uruchomienie tego zapytania zwróci 0, ponieważ przekazana wartość nie jest zgodna z określonym formatem.

  1. Utwórz zapytanie, aby uzyskać pracowników wyświetlacza o wynagrodzeniach równych lub większych niż 150000.

Zapytanie dla tego żądania będzie:

SELECT EmpName FROM Pracownicy WHERE Wynagrodzenie>=150000;

  1. Napisz zapytanie, aby pobrać rok przy użyciu daty.

Możesz uzyskać rok od daty na serwerze SQL, uruchamiając następujące zapytanie:

WYBIERZ ROK(GETDATE()) jako „Rok”;

  1. Utwórz zapytanie SQL, aby pobrać EmpPostion i łączną pensję wypłaconą za każde stanowisko pracownika.

Zapytanie dla tego żądania to:

WYBIERZ EmpPosition, SUM(Salary) z EmployeePosition GROUP BY EmpPosition;

  1. Napisz zapytanie, aby znaleźć zduplikowane rekordy z tabeli.

Jedno z najczęstszych pytań w każdym przewodniku z pytaniami i odpowiedziami do wywiadu SQL.

SELECT EmpID, EmpFname, Dział COUNT(*)

Z GRUPY EmployeeInfo WEDŁUG EmpID, EmpFname, Działu

POSIADAJĄC LICZBĘ(*) > 1;

  1. Utwórz zapytanie, aby pobrać trzecią najwyższą pensję z tabeli EmpPosition.

WYBIERZ TOP 1 wynagrodzenie

OD(

WYBIERZ TOP 3 wynagrodzenie

OD pracownika_stół

ZAMÓW WEDŁUG WYNAGRODZENIA DESC) AS emp

ZAMÓW WEDŁUG WYNAGRODZENIA ASC;

  1. Napisz zapytanie SQL, aby znaleźć parzyste i nieparzyste rekordy w tabeli EmployeeInfo.

Musisz użyć funkcji MOD(), aby pobrać z tabeli rekordy parzyste i nieparzyste. W przypadku rekordów parzystych zapytanie będzie wyglądało następująco:

SELECT EmpID FROM (SELECT rowno, EmpID from EmployeeInfo) WHERE MOD(rowno,2)=0;

W przypadku rekordów nieparzystych zapytanie będzie wyglądało następująco:

SELECT EmpID FROM (SELECT rowno, EmpID from EmployeeInfo) WHERE MOD(rowno,2)=1;

  1. Utwórz zapytanie, aby pobrać listę pracowników tego samego działu.

Oto zapytanie dotyczące tego żądania:

Wybierz DISTINCT E.EmpID, E.EmpFname, E.DepartmentFROM EmployeeInfo E, Employe E1

GDZIE E.Dział = E1.Dział I E.EmpID != E1.EmpID;

Ucz się kursów oprogramowania online z najlepszych światowych uniwersytetów. Zdobywaj programy Executive PG, Advanced Certificate Programs lub Masters Programs, aby przyspieszyć swoją karierę.

Wniosek

W ten sposób dochodzimy do końca naszej listy pytań do wywiadu zapytań SQL. Mamy nadzieję, że te zapytania dadzą dobry obraz standardowego wzorca zapytań SQL i sposobu tworzenia zapytań SQL. Im więcej ćwiczysz, tym lepiej będziesz pisać zapytania SQL w celu uzyskania dostępu do danych w tabeli danych i manipulowania nimi.

Jeśli chcesz poszerzyć swoją wiedzę na temat SQL i dowiedzieć się więcej o tworzeniu pełnego stosu, sprawdź dyplom PG IIIT-B i upGrad w zakresie tworzenia oprogramowania z pełnym stosem, który jest stworzony dla pracujących profesjonalistów i oferuje ponad 10 studiów przypadków i projektów, praktyczne praktyczne warsztaty, mentoring z ekspertami branżowymi, 1 na 1 z mentorami branżowymi, ponad 400 godzin nauki i pomocy w pracy z najlepszymi firmami.

Przygotuj się na karierę przyszłości

Złóż wniosek o program Executive PG w zakresie pełnego rozwoju stosu