Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Объединение таблиц / 13 сообщений из 13, страница 1 из 1
31.10.2013, 11:18:36
    #38447912
kinnder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
Добрый день,уважаемые члены форума! С SQL работаю относительно недавно, поэтому встал вопрос по объединению таблиц для отчета. Нужно выполнить объединение двух таблиц как показано на примере.
Table 1
idname1 иван2 петр3 сергей
Table 2
idauto1 ваз-21091 газ-31102 бмв

Result_Table
idnameauto1иванваз-2109 nullnullгаз-31102петр бмв3сергейnull

Каким запросом можно получить итоговую таблицу?
...
Рейтинг: 0 / 0
31.10.2013, 11:23:00
    #38447926
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
Никаким. В приведённом примере нет логики. Почему null-ы во второй результирующей записи, а не в первой?

Практически почти что результирующий набор можно получить, используя union двух запросов (ну нет тут full outer join, придётся эмулировать):

Код: sql
1.
2.
3.
select from t1 left join t2
union
select from t2 left join t1 where t1.id is null



однако он не будет делать той самой нелогичной хрени по об-null-ению повторяющихся полей. Если очень нужно - то поручи эту работу клиентской части.
...
Рейтинг: 0 / 0
31.10.2013, 11:30:18
    #38447947
kinnder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
Null-ы во второй строке, потому что потом данные из результирующей таблицы без дополнительных обработок будут переданы в отчет Crystal Reports на печать.
...
Рейтинг: 0 / 0
31.10.2013, 11:45:42
    #38447991
qwerty112
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
kinnderNull-ы во второй строке, потому что потом данные из результирующей таблицы без дополнительных обработок будут переданы в отчет Crystal Reports на печать.
в любой, самой зачуханой отчетной системе, есть опция (для поля вывода) - "Скрыть повторы"
если такое есть для Crystal Reports, то делаешь простой запрос
Table 1 left join Table 2 ... order by id
а для полей вывода id и name - устанавливаешь - "Скрыть повторы"
...
Рейтинг: 0 / 0
31.10.2013, 11:46:33
    #38447994
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
kinnderNull-ы во второй строке, потому что потом данные из результирующей таблицы без дополнительных обработок будут переданы в отчет Crystal Reports на печать.А про группировку в CrystalReports вы не слышали?
...
Рейтинг: 0 / 0
31.10.2013, 12:11:04
    #38448072
kinnder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
Групировки и всяческие навороты Crystal для меня пока еще "темный лес". Разбираюсь потихонечьку, но как обычно это бывает, на разбирание надо время,а у руководства времени нет, им надо вчера.
...
Рейтинг: 0 / 0
31.10.2013, 12:16:26
    #38448088
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
kinnderNull-ы во второй строке, потому что потом данные из результирующей таблицы без дополнительных обработок будут переданы в отчет Crystal Reports на печать.Почему не в первой??? почему вывод не вот такой:
id name auto null null ваз-2109 1 иван газ-3110 2 петр бмв 3 сергей null
и не такой:id name auto 1 иван газ-3110 null null ваз-2109 2 петр бмв 3 сергей null а именно так, как у тебя?
...
Рейтинг: 0 / 0
31.10.2013, 12:26:55
    #38448125
kinnder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
Akina,Потому что в первом случае отчет будет не совсем удобен для визуального восприятия на бумаге, когда в отчете будет гораздо больше строк.
Столбец auto для второго случая должен быть отсортирован по возрастанию. В примере это наименование авто,в отчете это дата документа.
...
Рейтинг: 0 / 0
31.10.2013, 12:32:04
    #38448136
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
kinnderСтолбец auto для второго случая должен быть отсортирован по возрастанию. В примере это наименование авто,в отчете это дата документа.Ну так говно вопрос. Вона есть ФАК по выбору первой записи в группе. Выбирай. Линкуй по ID как подзапрос справа, да и бери все поля из него. Соответственно для второй и следующих записей в группе соответствия не найдётся, вот и будет тебе NULL и счастьице.
...
Рейтинг: 0 / 0
31.10.2013, 12:45:34
    #38448177
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
kinnderГрупировки и всяческие навороты Crystal для меня пока еще "темный лес". Разбираюсь потихонечьку, но как обычно это бывает, на разбирание надо время,а у руководства времени нет, им надо вчера.Весь прикол в том, что кристалу для правильной группировки и вывода красиво оформленной таблички НЕОБХОДИМО наличие дублирующихся записей, по которым он будет группировать данные отчета.

Изучайте матчасть, а не страдайте фигней
...
Рейтинг: 0 / 0
31.10.2013, 12:48:49
    #38448186
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
тем более что добавить группировку и сделать "общие" клетки таблицы а-ля Excel - дело 1-2 минут
...
Рейтинг: 0 / 0
31.10.2013, 13:00:41
    #38448209
Cygapb-007
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
Cygapb-007...кристалу для правильной группировки и вывода красиво оформленной таблички НЕОБХОДИМО наличие дублирующихся записей значений ключей, по которым он будет группировать данные отчета.
...
Рейтинг: 0 / 0
01.11.2013, 22:09:47
    #38450607
kinnder
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Объединение таблиц
Чтобы не плодить тем на форуме,спрошу в этой...с группировками в Crystal все заработало. Отчет выходит практически такой как надо.Спасибо за наставления. Позвольте еще один маленький вопрос в этой теме. Можно ли просуммировать результаты группировки?Если да то как проще это осущетсвить?
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Объединение таблиц / 13 сообщений из 13, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]