![]() |
|
Модераторы: skyboy |
![]()
|
|
| dimes |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 249 Регистрация: 20.7.2004 Где: то около СПБ Репутация: 1 Всего: 14 |
Есть 2 таблици tab_1 и tab_2 они практически индентичны т.е. имеются много схожих полей(по имени, по типу и по смысловой нагрузки)
например tab_1 содержит: date sum 2004-11-01 2 2004-11-03 3 2004-11-04 6 tab_2 содержит: date sum 2004-11-02 1 2004-11-04 4 2004-11-05 3 как видно значения могут отсутствовать как в первой таблице так и во второй нужен запрос чтобы получить: 2004-11-01 2 2004-11-02 1 2004-11-03 7 2004-11-04 10 2004-11-05 3 сейчас я делаю отдельные запросы для каждой таблицы, сразу загоняя ответы во временную таблицу, потом делаю выборку(уже из временной таблици) с групировкой и сортировкой. можно ли тоже самое реализовать одним запросом(желательно чтобы это было не медленее чем мой вариант заранее благодарен и еще версия mySQL 3.23 Это сообщение отредактировал(а) dimes - 9.11.2004, 19:00 |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 21 Всего: 73 |
Если я тебя правильно понял, вот так:
PS: Предикаты и сортировку ставь свои. PPS: Имена полей и их порядок в первом и втором селекте должны быть идентичны (либо NULL). Это сообщение отредактировал(а) Ignat - 9.11.2004, 19:00 -------------------- Теперь при чем :P |
|||
|
||||
| dimes |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 249 Регистрация: 20.7.2004 Где: то около СПБ Репутация: 1 Всего: 14 |
Ignat
спасибо только я забыл версию написать, извините
к сожелению |
|||
|
||||
| Ignat |
|
|||
![]() Флудератор ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4030 Регистрация: 19.4.2004 Где: غيليندزيك مدينة Репутация: 21 Всего: 73 |
Тогда сделай два селекта, а массивы слей вместе в клиенте.
-------------------- Теперь при чем :P |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
dimes
Тогда может сделать одну таблицу вместо двух? добавить поле "опознания", если опознать по остальным полям невозможно... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| dimes |
|
||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 249 Регистрация: 20.7.2004 Где: то около СПБ Репутация: 1 Всего: 14 |
спасибо, этого я и боялся...
похоже придется остановится на варианте со временной таблицей Добавлено @ 19:33
к сожелению нельзя
а поподробнее можно? |
||||
|
|||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: 106 Всего: 454 |
dimes
Можно и поподробнее... Скажем есть 2 таблицы. Имена полей не важны, потому именуем по подобию: Table1: Field1 Field2 Field3 Table2: Field1 Field4 Field5 Т.е. есть поле Field1, которое смысловО одинаково для обоих таблиц (может в макетах обозвано по-разному, но это мелочи), и есть поля Field2-5, причем поля 2 и 4 одного типа (скажем длинное целое), а 3 и 5 - разных и уникальных (скажем string и double). Возможны объединения: 1) Table12 Field1 Field2 Field3 Field4 Field5 Принадлежность к таблице четко определяется пустотой значений полей. 2) Table12 Field1 Field24 Field3 Field5 Принадлежность к таблице и контент Field24 четко определяется пустотой значений полей 3 или 5. Если же все поля смысловО соответственны или хотя бы типовО соответственны (т.е. 3 и 5 тоже одного типа), то возможно объединение: 3) Table12 Field1 Field24 Field35 TableNum Соответственно принадлежность к таблице и контент Field24 и Field35 четко определяетсязначением поля TableNum. Отбор монотабличных данных производится чуть более длинным условием (скажем для варианта 2 при выборке данных, относящихся только к таблице 1 это будет WHERE (то_что_было) AND Field3 NOT Null), зато упрощается отбор совокупных данных... PS. Я так понимаю что хостинг - чужой, и версию MySQL не проапдейтить... -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | MySQL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |