powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / представление обьединить с другими таблицами
25 сообщений из 47, страница 1 из 2
представление обьединить с другими таблицами
    #38521316
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, Уважаемые программисты! Есть таблицы, где хранятся данные, мне нужно объединить их с представлением(view), соединение получаются с таблицами, а соединить представление с другими таблицами не получается. Как сделать, чтобы работала вместе. Благодарю.

здесь представление табл. - (all)

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
select
doc.stat,
doc.name,
doc.caption,
doc.date,
num.sum,
sum(all.beg),
sum(all.end)
from doc
inner join num on doc.id=num.id
left join all on num.id=all.id
where
doc.caption='работает'
and doc.date=(select max(DD.date)from doc DD where DD.name='все'
and DD.caption='работает'
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521318
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
davisum(all.beg),
sum(all.end)
Про group by слышал?

П.С. В следующий раз пиши и текст ошибки и запрос заключай в тэг SRC.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521334
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
daviздесь представление табл. - (all)

Крайне не удачное название для таблицы, учитывая что есть оператор union all
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521339
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

прошу прощения.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521357
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadmandavisum(all.beg),
sum(all.end)
Про group by слышал?

П.С. В следующий раз пиши и текст ошибки и запрос заключай в тэг SRC.
выбирал тэг src-t)SQL, но увы не выбирается, я с мобильного пишу.

про group by слышал, попробовал, не помогает. У меня либо показывает представления или только настоящие таблицы, посоветуйте, пожалуйста, буду признателен.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521388
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробовал сделать так:
inner join
left join или rigth, показывает только левую часть или правую, объединить не получается.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521389
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробовал сделать так:
inner join
left join или rigth, показывает только левую часть или правую, объединить не получается.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521394
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
daviпро group by слышал, попробовал, не помогает.
Придется потрудиться написать что пробовал и результат. Не торопись, доберись до компьютера сначала.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521436
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadmandaviпро group by слышал, попробовал, не помогает.
Придется потрудиться написать что пробовал и результат. Не торопись, доберись до компьютера сначала.
я только, что оттуда, безрезультатно. Почему представления не соединяются. Вы наверное точно знаете :)
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521446
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
davi,

для начала приведите что вы там делали. Даже запрос в стартовом посте приведён не полностью. Покажите схематично какие данные и что хотите получить.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521480
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,
уважаемый, нужно получить столбцы:
статус, наименование, заголовок, дата, сумма1(сумма), сумма2(начальная сумма), сумма3(конечная сумма). Я хочу объединить таблицы со столбцами all.beg, all.end, чтобы все показывал, а так только показывает либо левую часть либо правую, т.е. Показывает все кроме сум2и Сум3, или показывает только сум2, сум3.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521487
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
davi, придется показать запрос, результат и желаемое. Понимаю, страшно, но...
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521499
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman,

я все вам покажу, домой приеду только. Весь код выложу. Спасибо за понимание.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521504
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
davi,

что-то типа вот такого?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
WITH ALL_SUM AS (
  SELECT ALL.ID AS ID,
         SUM(ALL.BEG) AS SUM_BEG,
         SUM(ALL.END) AS SUM_END
  FROM ALL
  GROUP BY 1
)
SELECT
    DOC.STAT,
    DOC.NAME,
    DOC.CAPTION,
    DOC.DATE,
    NUM.SUM,
    ALL_SUM.SUM_BEG,
    ALL_SUM.SUM_END
FROM DOC
INNER JOIN NUM ON DOC.ID = NUM.ID
LEFT JOIN ALL_SUM ON NUM.ID = ALL_SUM.ID
WHERE DOC.CAPTION = 'работает' AND
      DOC.DATE = (SELECT
                      MAX(DD.DATE)
                  FROM DOC DD
                  WHERE DD.NAME = 'все' AND
                        DD.CAPTION = 'работает')
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521511
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денис,
нет, я так не писал.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521515
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов Денисdavi,

что-то типа вот такого?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
WITH ALL_SUM AS (
  SELECT ALL.ID AS ID,
         SUM(ALL.BEG) AS SUM_BEG,
         SUM(ALL.END) AS SUM_END
  FROM ALL
  GROUP BY 1
)
SELECT
    DOC.STAT,
    DOC.NAME,
    DOC.CAPTION,
    DOC.DATE,
    NUM.SUM,
    ALL_SUM.SUM_BEG,
    ALL_SUM.SUM_END
FROM DOC
INNER JOIN NUM ON DOC.ID = NUM.ID
LEFT JOIN ALL_SUM ON NUM.ID = ALL_SUM.ID
WHERE DOC.CAPTION = 'работает' AND
      DOC.DATE = (SELECT
                      MAX(DD.DATE)
                  FROM DOC DD
                  WHERE DD.NAME = 'все' AND
                        DD.CAPTION = 'работает')



очень красиво написали :)
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521541
Фотография Симонов Денис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
daviСимонов Денис,
нет, я так не писал.

конечно не так. Я включил свой ХШ. Угадал или нет нужный результат не знаю.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38521563
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Симонов ДенисdaviСимонов Денис,
нет, я так не писал.

конечно не так. Я включил свой ХШ. Угадал или нет нужный результат не знаю.
я дома буду только через два часа, сейчас возможности нет проверить код. Но все равно спасибо.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38522050
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемый, wadman!
Код:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
select
document.doc_status,
document.objectname,
document.doc_caption,
document.doc_date,
num_mv.outsum,
sum(mv_all.sum_beg) as sum1,
sum(mv_all.sum_end) as sum2
from num_mv 
inner join document on num_mv.id=document.id
left join mv_all on document.id=mv_all.id
where
document.doc_caption='Выполнен'
and document.objectname,='num_mv'
and document.doc_date=(select max(dd.doc_date) from document dd where dd.objectname='num_mv'
and dd.doc_caption='Выполнен')
group by outsum, 
doc_status,
objectname,
doc_caption,
doc_date
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38522061
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
daviУважаемый, wadman!
Код:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
select
document.doc_status,
document.objectname,
document.doc_caption,
document.doc_date,
num_mv.outsum,
sum(mv_all.sum_beg) as sum1,
sum(mv_all.sum_end) as sum2
from num_mv 
inner join document on num_mv.id=document.id
left join mv_all on document.id=mv_all.id
where
document.doc_caption='Выполнен'
and document.objectname,='num_mv'
and document.doc_date=(select max(dd.doc_date) from document dd where dd.objectname='num_mv'
and dd.doc_caption='Выполнен')
group by outsum, 
doc_status,
objectname,
doc_caption,
doc_date


И это компилируется/выполняется?
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38522078
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman, получается без представления (mv_all), т.е. убираю left join, и столбцы sum(mv_all.sum_beg) as sum1, sum(mv_all.sum_end) as sum2.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38522086
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
daviполучается без представления (mv_all)
Ой-ли?
davi
Код: sql
1.
and document.objectname,='num_mv'


На этом месте должно послать куда-то...

Уж проверял-бы, вроде до компа обещал добраться. Заодно определись, что такое "получается" и чем оно отличается от "не получается".
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38522087
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman, но мне эти столбцы очень нужны. left, rigth пробовал, показывает, только либо левую, либо правую часть.
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38522088
Мимопроходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hello, davi!
You wrote on 10 января 2014 г. 15:14:05:

davi> wadman, получается без представления (mv_all), т.е. убираю left join, и
> столбцы sum(mv_all.sum_beg) as sum1, sum(mv_all.sum_end) as sum2.
никому не сообщай текст сообщения об ошибке.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
представление обьединить с другими таблицами
    #38522091
davi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
wadman, без представления компилируется.
...
Рейтинг: 0 / 0
25 сообщений из 47, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / представление обьединить с другими таблицами
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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