SQL Server'da Sorgu Performansını İyileştirme
Dean Smith
Founder, Atamai Analytics
1. FROM
4. WHERE
6. HAVING
7. SELECT
SELECT Team,
SUM(TotalPoints) AS TotalSGTeamPoints
FROM PlayerStats
WHERE Position = 'SG'
GROUP BY Team
| Team | TotalSGTeamPoints |
|---|---|
| ATL | 2034 |
| BOS | 1606 |
| BRK | 2126 |
| CHI | 2905 |
| CHO | 2661 |
| CLE | 2489 |
| ... | ... |
SELECT Team,
SUM(TotalPoints) AS TotalSGTeamPoints
FROM PlayerStats
WHERE Position = 'SG'
GROUP BY Team
SELECT Team,
SUM(TotalPoints) AS TotalSGTeamPoints
FROM PlayerStats
--WHERE Position = 'SG'
GROUP BY Team, Position
HAVING Position = 'SG'
HAVING ifadesini tekil veya gruplandırılmamış satırları filtrelemek için kullanmayın
| Team | TotalSGTeamPoints |
|---|---|
| ATL | 2034 |
| BOS | 1606 |
| BRK | 2126 |
| CHI | 2905 |
| CHO | 2661 |
| CLE | 2489 |
| ... | ... |
SELECT
Team,
SUM(DRebound+ORebound) AS TotRebounds,
SUM(DRebound) AS TotDef,
SUM(ORebound) AS TotOff
FROM PlayerStats
GROUP BY Team;
| Team | TotRebounds | TotDef | TotOff |
|---|---|---|---|
| ATL | 3436 | 2693 | 743 |
| BOS | 3645 | 2878 | 767 |
| BRK | 3644 | 2852 | 792 |
| CHI | 3663 | 2873 | 790 |
| CHO | 3728 | 2901 | 827 |
| CLE | 3455 | 2761 | 694 |
| ... | ... | ... | ... |
SELECT
Team,
SUM(DRebound+ORebound) AS TotRebounds,
SUM(DRebound) AS TotDef,
SUM(ORebound) AS TotOff
FROM PlayerStats
WHERE ORebound >= 1000
GROUP BY Team;
| Team | TotRebounds | TotDef | TotOff |
|---|---|---|---|
SELECT
Team,
SUM(DRebound+ORebound) AS TotRebounds,
SUM(DRebound) AS TotDef,
SUM(ORebound) AS TotOff
FROM PlayerStats
GROUP BY Team
HAVING ORebound >= 1000;
------------------------------------------------
-- HATA
'HAVING' ifadesinde 'PlayerStats.ORebound' sütunu
geçersizdir; çünkü bir toplu fonksiyonda ya da
GROUP BY ifadesinde yer almıyor.
SELECT
Team,
SUM(DRebound+ORebound) AS TotRebounds,
SUM(DRebound) AS TotDef,
SUM(ORebound) AS TotalOff
FROM PlayerStats
GROUP BY Team
-- aggregate function SUM()
HAVING SUM(ORebound) >= 1000;
| Team | TotRebounds | TotDef | TotOff |
|---|---|---|---|
| OKC | 3695 | 2671 | 1024 |
SQL Server'da Sorgu Performansını İyileştirme