Varför inte lägga till prefixet som en separat (beräknad) kolumn?
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 ?
Redigera: Jag har också ändrat UNION [DISTINCT]
till UNION ALL
- av följande skäl:
- Om den ursprungliga frågan ger andra resultat för
UNION
ochUNION ALL
, kommer prefixet att ändra antalet resultatrader. - I de flesta fall
UNION ALL
är något snabbare änUNION DISTINCT
. - De flesta vill faktiskt ha
UNION ALL
.