Свързване на няколко заявки в една

kulov

Registered
Идеята ми е да свържа няколко заявки в една.
Таблиците от които се извежда имат една и съща структура, единствено записите са различни, заявките са нещо от сорта на това:

SELECT `id`, `title` FROM `db` . `table` WHERE `sth` LIKE '%$term%' GROUP BY `title` ORDER BY `hits` DESC LIMIT 0,2

и така са всички заявки, всичко е едно и също, единствената разлика е във стойноста на `table`.

Моята идея е всички резултати да са в една заявка за да може ORDER BY `hits` да действа за всички резултати, защото както е в момента действа само на съответни резултати от съответната таблица..
 
PHP:
SELECT `table.id`, `table.title`, `table2.id`, `table2.title` FROM `db` . `table`, `db` . `table2` WHERE `table.sth` LIKE '%$term%'  OR `table2.sth` LIKE '%$term%' GROUP BY `table.title` ORDER BY `table.hits` DESC LIMIT 0,2
 
Заявката ОК, но се замислих ами при ORDER BY `table` - това table трябва да не е индивидуално за всяка една таблица .. идеята е да се сортират по стойностите в това поле, но не по отделно за всяка таблица ами генерално.. ако ме разбирате..
 
Нещо такова ?

SELECT * FROM (
(SELECT * FROM `db` . `table`)
UNION ALL
(SELECT * FROM `db` . `table2`)
) a WHERE sth LIKE '%$term%' GROUP BY title ORDER BY hits DESC LIMIT 0,2
 

Back
Горе