Hvorfor ikke tilføje præfikset som en separat (beregnet) kolonne?
SELECT 'SN' prefix, snippet_id, title FROM tbl_snippets WHERE title LIKE ?
UNION ALL
SELECT 'TA', tag_id, tag FROM tbl_tags WHERE tag LIKE ?
UNION ALL
SELECT 'CA', category_id, category FROM tbl_categories WHERE category LIKE ?
Rediger: Jeg har også ændret UNION [DISTINCT]
til UNION ALL
- af følgende årsager:
- Hvis den oprindelige forespørgsel giver andre resultater for
UNION
ogUNION ALL
, vil introduktion af præfikset ændre antallet af resultatrækker. - I de fleste tilfælde
UNION ALL
er lidt hurtigere endUNION DISTINCT
. - De fleste mennesker ønsker faktisk at have
UNION ALL
.