Maswali ya Mahojiano kwa Wasanidi wa SQL: Maswali na Majibu ya Mahojiano ya Kawaida ya SQL- Sehemu ya 4

Eleza dhana ya kuunda function na procedure katika SQL na faida za kuzitumia.

Jibu: Function na procedure katika SQL huitwa vizuizi vya msimbo ambavyo vinaweza kuitwa kutoka kwa maswali au programu zingine.

  • Function: Hurejesha thamani na mara nyingi hutumika kwa hesabu na kurejesha matokeo.
  • Procedure: Hairudishi thamani na inatumika kufanya kazi za uchakataji au kuhifadhi.

Faida za kutumia kazi na taratibu ni pamoja na:

  • Kupunguza marudio ya msimbo, na kurahisisha kudumisha na kudhibiti msimbo.
  • Kuongezeka kwa utumiaji tena, kuruhusu msimbo kutumika tena katika sehemu nyingi.
  • Kuboresha utendakazi, kwani kazi na taratibu mara nyingi hutungwa mara moja na kutumika tena mara nyingi.

 

Jinsi ya kutumia RECURSIVE maswali na COMMON TABLE EXPRESSION(CTE) katika SQL.

Jibu: RECURSIVE maswali na COMMON TABLE EXPRESSION(CTE) hutumika kushughulikia hoja zinazojirudia na kutumia tena sehemu ya hoja katika SQL.

  • RECURSIVE: Huruhusu kutekeleza maswali yanayojirudia katika hifadhidata.
  • CTE: Hufanya kazi kama seti ya matokeo ya muda, ikivunja hoja katika sehemu ndogo, zinazoweza kudhibitiwa zaidi.
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;  

 

Jinsi ya kushughulikia nakala za data na kesi batili za data katika SQ

Jibu: Ili kushughulikia data iliyorudiwa na batili katika SQL, tunaweza kutumia taarifa za SQL kama vile DISTINCT, GROUP BY, HAVING, na vikwazo vya KIPEKEE ili kuhakikisha upekee wa data. Zaidi ya hayo, tunaweza kutumia UPDATE au DELETE taarifa ili kuondoa nakala au rekodi zisizo sahihi.

 

Hapa kuna tafsiri ya aina maalum za data katika Seva ya SQL

Các kiểu dữ liệu đặc biệt inhư XML, GEOGRAPHY, na GEOMETRY katika SQL Server được dụng để trữ vữ vụ ặc thù và phức tạp. Dưới đây là mô tả về từng kiểu dữ liệu này:

XML:

  • Aina ya data ya XML katika Seva ya SQL inaruhusu kuhifadhi na kufanya kazi na data katika umbizo la Lugha ya Alama ya Kupanua.
  • Data ya XML inaweza kuwa na miundo tajiri, inayowezesha uhifadhi wa taarifa zilizopangwa vizuri na zinazonyumbulika.
  • Seva ya SQL hutoa kazi na mbinu za kuchezea data ya XML, kuruhusu kuuliza maswali, kuunda na kubadilisha data ya XML.

GEOGRAPHY Na GEOMETRY:

  • Aina GEOGRAPHY na GEOMETRY data katika Seva ya SQL hutumiwa kuhifadhi maelezo ya kijiografia na kijiometri.
  • GEOGRAPHY hutumika kuwakilisha vitu vya kijiografia kama vile pointi, mistari, maeneo, na poligoni kwenye uso wa dunia.
  • GEOMETRY hutumika kuwakilisha vitu vya kijiometri kama vile pointi, mistari, maeneo na poligoni katika nafasi tambarare.

Aina zote mbili za data zinaauni utendakazi na utendaji maalum wa kuuliza na kuchanganua data ya kijiografia na kijiometri.

 

Eleza utendakazi na utendakazi wa kushughulikia data ya tarehe na saa katika SQL

Kazi na vipengele vya kuchakata data ya tarehe na saa katika SQL hutumiwa kudhibiti na kutekeleza kazi zinazohusiana na tarehe na nyakati katika hifadhidata. Hapa kuna maelezo ya kina ya baadhi ya kazi na vipengele vya kawaida:

DATEPART(): Chaguo hili la kukokotoa linatumika kutoa kijenzi maalum(kwa mfano, siku, mwezi, mwaka, saa, dakika, sekunde) kutoka kwa tarehe au thamani ya wakati.

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

DATEDIFF(): Chaguo hili la kukokotoa la kukokotoa hukokotoa tofauti ya saa kati ya thamani mbili za tarehe au saa.

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

DATEADD(): Chaguo hili la kukokotoa linaongeza idadi fulani ya siku, miezi, miaka au wakati kwa tarehe au thamani ya wakati.

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

GETDATE(): Chaguo hili la kukokotoa hurejesha tarehe na saa ya sasa ya mfumo.

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

CONVERT(): Chaguo hili la kukokotoa linatumika kubadilisha thamani za tarehe au saa kutoka umbizo moja hadi jingine.

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

FORMAT(): Chaguo hili la kukokotoa linatumika kuumbiza thamani za tarehe au saa kulingana na mchoro uliobainishwa awali.

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