Sobes.tech
Junior — Middle

Ի՞նչ է HAVING և WHERE պայմանների տարբերությունը SQL հարցումների ժամանակ։

sobes.tech AI

Պատասխան AI-ից

SQL-ում WHERE և HAVING-ի հիմնական տարբերակը.

  • WHERE-ը սյունակները առաջ խմբագրման (GROUP BY): այն կիրառվում է առանձին գրանցումների վրա:
  • HAVING-ը սյունակների ցանկացած խմբագրման հետո: այն օգտագործվում է ամփոփիչ ֆունկցիաների պայմանների համար (օրինակ, COUNT, SUM):

Օրինակ:

SELECT բաժին, COUNT(*) որպես աշխատակիցների_համար
FROM աշխատողներ
WHERE աշխատավարձ > 50000    -- ֆիլտրում է աշխատողներին, որոնց աշխատավարձը բարձր է 50000-ից
GROUP BY բաժին
HAVING COUNT(*) > 10     -- ընտրում է բաժիններ, որտեղ ավելի քան 10 աշխատող կա

Այստեղ WHERE-ը ընտրում է տողերը խմբագրման համար, իսկ HAVING-ը արդեն խմբագրված տվյալները ֆիլտրում է։