На самом деле, если вы используете UNION, любые повторяющиеся строки могут быть удалены. Используйте UNION ALL, если вы хотите сохранить любые дубликаты (скажем, если вы хотите выполнить COUNT для всех строк, соответствующих% tom% в table1 и table2.
(SELECT * FROM `table1` WHERE `name` LIKE '%tom%') UNION ALL (SELECT * FROM `table2` WHERE `name` LIKE '%tom%')