Intervjufrågor för SQL-utvecklare: Vanliga SQL-intervjufrågor och svar- Del 4

Förklara konceptet med att skapa function och procedure i SQL och fördelarna med att använda dem.

Svar: Function och procedure i SQL kallas kodblock som kan anropas från andra frågor eller applikationer.

  • Function: Returnerar ett värde och används ofta för beräkningar och returnerar resultat.
  • Procedure: Returnerar inget värde och används för att utföra databearbetning eller lagringsuppgifter.

Fördelarna med att använda funktioner och procedurer inkluderar:

  • Reducerar kodduplicering, vilket gör det lättare att underhålla och hantera kod.
  • Ökar återanvändbarheten, vilket gör att kod kan återanvändas på flera ställen.
  • Förbättrad prestanda, eftersom funktioner och procedurer ofta kompileras en gång och återanvänds flera gånger.

 

Hur man använder RECURSIVE frågor och COMMON TABLE EXPRESSION(CTE) i SQL.

Svar: RECURSIVE frågor och COMMON TABLE EXPRESSION(CTE) används för att hantera rekursiva frågor och återanvända en del av en fråga i SQL.

  • RECURSIVE: Tillåter att utföra rekursiva frågor i databasen.
  • CTE: Fungerar som en tillfällig resultatuppsättning som delar upp en fråga i mindre, mer hanterbara delar.
WITH RECURSIVE RecursiveCTE(ID, ParentID, Level) AS( 
  SELECT ID, ParentID, 0 AS Level FROM Categories WHERE ParentID IS NULL  
  UNION ALL  
  SELECT C.ID, C.ParentID, Level + 1 FROM Categories C  
  INNER JOIN RecursiveCTE RC ON C.ParentID = RC.ID  
)  
SELECT * FROM RecursiveCTE;  

 

Hur man hanterar dubbletter av data och ogiltiga datafall i SQ

Svar: För att hantera dubbletter och ogiltiga data i SQL kan vi använda SQL-satser som DISTINCT, GROUP BY, HAVING och UNIQUE begränsningar för att säkerställa dataunikitet. Dessutom kan vi använda UPDATE eller DELETE uttalanden för att eliminera dubbletter eller ogiltiga poster.

 

Här är översättningen av de speciella datatyperna i SQL Server

Các kiểu dữ liệu đặc biệt như XML, GEOGRAPHY, och GEOMETRY med SQL Server được sử dụng để lưặn på phức tạp. Dưới đây là mô tả về từng kiểu dữ liệu này:

XML:

  • XML-datatypen i SQL Server tillåter lagring och arbete med data i formatet Extensible Markup Language.
  • XML-data kan innehålla rika strukturer, vilket möjliggör lagring av välorganiserad och flexibel information.
  • SQL Server tillhandahåller funktioner och metoder för att manipulera XML-data, vilket gör det möjligt att fråga, skapa och transformera XML-data.

GEOGRAPHY Och GEOMETRY:

  • Datatyperna GEOGRAPHY och GEOMETRY i SQL Server används för att lagra geografisk och geometrisk information.
  • GEOGRAPHY används för att representera geografiska objekt som punkter, linjer, regioner och polygoner på jordens yta.
  • GEOMETRY används för att representera geometriska objekt som punkter, linjer, regioner och polygoner i ett plant utrymme.

Båda datatyperna stöder speciella operationer och funktioner för att söka och analysera geografiska och geometriska data.

 

Förklara funktioner och funktioner för hantering av datum- och tidsdata i SQL

Funktioner och funktioner för bearbetning av datum- och tidsdata i SQL används för att manipulera och utföra uppgifter relaterade till datum och tider i databasen. Här är en detaljerad beskrivning av några vanliga funktioner och funktioner:

DATEPART():Denna funktion används för att extrahera en specifik komponent(t.ex. dag, månad, år, timme, minut, sekund) från ett datum- eller tidsvärde.

SELECT DATEPART(YEAR, '2023-07-19'); -- Result: 2023

DATEDIFF(): Denna funktion beräknar tidsskillnaden mellan två datum- eller tidsvärden.

SELECT DATEDIFF(DAY, '2023-07-01', '2023-07-19'); -- Result: 18(number of days between two dates)

DATEADD(): Denna funktion lägger till ett visst antal dagar, månader, år eller tid till ett datum- eller tidsvärde.

SELECT DATEADD(DAY, 7, '2023-07-19'); -- Result: '2023-07-26'(adding 7 days)

GETDATE(): Denna funktion returnerar systemets aktuella datum och tid.

SELECT GETDATE(); -- Result: '2023-07-19 12:34:56.789'

CONVERT(): Denna funktion används för att konvertera datum- eller tidsvärden från ett format till ett annat.

SELECT CONVERT(VARCHAR, '2023-07-19', 103); -- Result: '19/07/2023'

FORMAT(): Denna funktion används för att formatera datum- eller tidsvärden enligt ett fördefinierat mönster.

SELECT FORMAT('2023-07-19', 'dd/MM/yyyy'); -- Result: '19/07/2023'