Software Engineering › Key terms › Y12 Programming for the Web › SQL GROUP BY
SQL GROUP BY
Code pattern Y12 Programming for the Web
Definition
Groups rows that share a value so aggregate functions (COUNT, SUM, AVG, MIN, MAX) can be applied to each group.
Example
SELECT class, COUNT(*) FROM students GROUP BY class;Found in: syllabus, course specifications, 2025 HSC marking guidelines, school notes.
Where it is used in the test
Syllabus area: Y12 Programming for the Web.
Question types it can appear in
- SQL: 2025 Q21 and sample Q22a
- Fill in the blanks: Choose this term to complete a statement or table.
- Code reading: Code or algorithm reading: interpret a fragment and state its output or purpose.
- Multi-select: You tick every correct option, so know all its features or goals.
Where it has appeared in the paper
Programming for the Web (Part A, B). Part letters follow each paper’s own layout.
Related past questions
- 2025 HSC Q21 (4 marks): SQL queries Programming for the Web (Part A) · 4 marks
- Sample exam Q22a (2 marks): SQL (GROUP BY) Programming for the Web (Part B) · 2 marks
These are the questions the flashcard set links to this term. Open each one and compare your answer with its marking criteria.
Study links
- Flashcard: SQL GROUP BY in Programming for the Web (Year 12) · study that set
- Memorise: SQL vs ORM
How to use it in an answer
A model sentence
Code pattern: “Groups rows that share a value so aggregate functions (COUNT, SUM, AVG, MIN, MAX) can be applied to each group.” Then apply it: SELECT class, COUNT(*) FROM students GROUP BY class;
In a short answer, give the definition in your own words first, then tie it to the situation in the question. Do not copy the example above unless it fits the scenario.
Technique for the question types
- SQL: Use SELECT, FROM, WHERE, GROUP BY, ORDER BY in order; put text in quotes; combine conditions with AND or OR; name the right tables.
- Fill in the blanks: Choose the right word from a list; use exact syllabus terms.
- Multi-select: Pick ALL correct options; the guideline marks it right only if you tick every correct one (and no wrong one).
What the marking guidelines and feedback say
Note: the sample does not filter Category to Software/Hardware (the table is assumed to have only those two). Adding AND (Category = 'Software' OR Category = 'Hardware') is safe. Marker feedback: query must run; quotation marks around data being searched; use OR/AND in WHERE; correct GROUP BY and ORDER BY fields.
Worked answers from the marking guidelines
2025 HSC Q21 (4 marks): SQL queries (4 marks): criteria and sample answer
Criteria
4: Correct SQL query that extracts 'Pending' and 'Escalated' jobs for the 'Software' and 'Hardware' categories, counts the jobs for each status in each category, and outputs results in descending order. 3: Addresses most requirements. 2: Some understanding of the problem. 1: Some understanding of SQL or the problem.
Sample answer
SELECT Category, Status, COUNT(JobID) AS Jobs FROM Issues WHERE (Status = 'Pending' OR Status = 'Escalated') GROUP BY Status, Category ORDER BY Jobs DESC
Sample exam Q22a (2 marks): SQL (GROUP BY) (2 marks): criteria and sample answer
Criteria
2: Correctly completes the SQL query. 1: Correctly selects at least TWO correct options.
Sample answer
SELECT Level, COUNT(StudentID) FROM Students GROUP BY Level;
Common mistakes
- SQL questions (2025 HSC exam Q21): query must run; quotation marks around data being searched; use OR/AND in WHERE; correct GROUP BY and ORDER BY fields.
- Use the term exactly as the syllabus words it, then link it to the scenario in the question; the 2025 feedback repeatedly rewards using the stimulus.
- Answer the command word: outline gives main points only, explain gives a reason or cause, discuss gives both sides.
Related terms
Same group in the syllabus: Shell commands (mkdir, cd, touch, cp, rm, cat, grep) · SQL SELECT · SQL WHERE · SQL ORDER BY · SQL aggregate functions (COUNT, SUM, AVG) · SQL JOIN · SQL alias (AS) · SQL constraints · Primary key and foreign key · Object-relational mapping (ORM) · Service worker · Web app manifest · CRUD