![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Многотабличный запрос (MySQL)
Юрий © (2007-04-18 09:59:00)Имеется несколько таблиц в одной базе данных. Все столбцы таблиц одинаковы (и по имени, и по типу хранимых данных). Необходимо из всех этих таблиц выбрать группу данных, удовлетворяющих условию, и сгруппировать по другому полю.
(SELECT * FROM table1 WHERE some_field1='ok' GROUP BY some_field2)
UNION ALL
(SELECT * FROM table2 WHERE some_field1='ok' GROUP BY some_field2)
UNION ALL
...
Соответственно, получаем в результирующем наборе данных две копии группировок по полю some_field2:
1
2
3
1
2
3
...
Конечно, можно убрать UNION ALL и написать UNION, но тогда убираются всеидентичные строки по всем столбцам, а не только по полю some_field2.
Вопрос: можно ли от этого избавиться или нужен другой подход? Если да, то какой.
PS. СУБД - MySQL 5.x
Jan1 (2007-04-18 10:06:00) [41]
> Вопрос: можно ли от этого избавиться или нужен другой подход?
> Если да, то какой.
выучить наконец SQL. http://zipsites.ru/books/ponimanie_sql/