Ваша проблема в том, что пункт «Где» работает только с последним. Выберите
. Поэтому вам нужно заключить объединение в капсулу, а затем выполнить пункт «Где»
Как
SELECT
*
FROM
(SELECT * FROM kanyon UNION ALL SELECT * FROM zorlu UNION ALL SELECT * FROM
tesvikiye UNION ALL SELECT * FROM citys) a
where urun_barkod=1
Проблема в том, что вы собираете все данные из всех таблиц и объединяете их, и, наконец, затем удаляете все ненужные строки, что не имеет никакого смысла, потому что это требует времени и ресурсов.
Так что лучше это
SELECT * FROM kanyon where urun_barkod=1
UNION ALL SELECT * FROM zorlu where urun_barkod=1
UNION ALL SELECT * FROM tesvikiye where urun_barkod=1
UNION ALL SELECT * FROM citys where urun_barkod=1;
, который только объединяет фактические требуемые строки.
По моему мнению, я бы также добавил столбец в выборках для идентификации таблиц, но это я.