Checkboxes, Radio Buttons and Grouping
Checkboxes for many answers, radios for one. The name attribute is what groups radios, and fieldset with legend is what makes either group make sense.
Material for readers past the basics.
145 notes tagged
Checkboxes for many answers, radios for one. The name attribute is what groups radios, and fieldset with legend is what makes either group make sense.
A query inside a query. Learn where a subquery may appear, what each position requires it to return, and the error a scalar subquery raises when it re...
Why a join multiplies rows, how to detect it, and the anti join patterns that answer "which rows have no match at all".
Building queries across four or more tables: reading a join chain, non equality conditions, join order, and keeping a long query readable.
The three joins people meet last: keeping unmatched rows from both sides, deliberate Cartesian products, and joining a table to itself.
One cell covering several columns or rows. Simple to write, easy to get wrong, and the arithmetic has to balance or the whole grid tears.
Grouping by several columns, grouping by expressions, and the totals features - ROLLUP, CUBE and GROUPING SETS - that add subtotal rows.
Row groups give a table a header, a body and a summary. They are what make long tables printable, scrollable and understandable.
HAVING filters groups after aggregation, WHERE filters rows before it. Learn when each applies, why using both is usually correct, and which is faster...
A sublist goes inside the li it belongs to, not beside it. That one rule fixes almost every broken nested list, and it is what makes a multi level men...
Aggregating an expression rather than a column: weighted totals, conditional counts and the difference between counting rows and counting facts.
The third list type, and the most misunderstood. A description list pairs terms with descriptions, which makes it right for glossaries, metadata and s...