Junior — Middle
Ներկայացրեք HAVING օպերատորի և WHERE պայմանի տարբերությունները SQL-ում և երբ պետք է օգտագործել դրանք։
sobes.tech AI
Պատասխան AI-ից
SQL-ում, WHERE պայմանը սյունակները ֆիլտրում է խմբագրման առաջ, իսկ HAVING-ը՝ հետո:
- WHERE կիրառվում է տախտակի առանձին սյունակների վրա և սահմանափակում է տվյալների հավաքածուն, որը կկագրէ։
- HAVING կիրառվում է կուտակային ֆունկցիաների արդյունքների վրա և ֆիլտրում է GROUP BY հրամանի միջոցով ձևավորված խմբերը:
Օրինակ՝
SELECT բաժին, COUNT(*) որպես աշխատակիցների_համար
FROM աշխատողներ
WHERE աշխատավարձ > 50000 -- ֆիլտրում ենք աշխատողներին, որոնց աշխատավարձը գերազանցում է 50000
GROUP BY բաժին
HAVING COUNT(*) > 10 -- ընտրում ենք բաժիններ, որոնց մեջ ավելի քան 10 աշխատող կա
Օգտագործեք WHERE՝ սկզբնական տվյալները ֆիլտրելու համար, իսկ HAVING՝ կուտակված արդյունքները։