В общем есть запрос производящий выборку из нескольких таблиц.
Приблизительный вид:
SELECT distinct b.DF_NAME, a.FC_PREDMET, a.FCA_MAIL_NUM, a.FCA_MAIL_DATE , a.FC_CONTRACTOR, a.FC_NUM, c.DD_DATE, a.FC_DATE_BEGIN,
a.FC_DATE_END, a.FC_CURRENCY, a.FC_SUM_NDS, d.DG_NAME, a.FCA_GRNT_SUM, e.DFS_PUNTKT_SM
FROM FCT_CONTRACT a, DIM_FILIAL b, DIM_TIME c, DIM_GUARANTEE d, DIM_FIN_SOURCE e, FCT_FS_CONTRACT f
where a.KID_DIM_FILIAL = b.KID and a.KID_DIM_TIME = c.KID and f.KID_FCT_CONTRACT = a.KID and e.KID = f.KID_DIM_FIN_SOURCE
Проблемма заключается в том, что в таблице DIM_FIN_SOURCE содержиться несколько значений относящиеся к "основной" таблице FCT_CONTRACT т.е. Для каждой получаемой записи, получается несколько значений DFS_PUNTKT_SM, их можно представить как конкантенацию значений, но как это релиазовать ни как не соображу!
Здравствуйте, Oper_Troll, Вы писали:
O_T>В общем есть запрос производящий выборку из нескольких таблиц.
O_T>Приблизительный вид:
O_T>O_T>SELECT distinct b.DF_NAME, a.FC_PREDMET, a.FCA_MAIL_NUM, a.FCA_MAIL_DATE , a.FC_CONTRACTOR, a.FC_NUM, c.DD_DATE, a.FC_DATE_BEGIN,
O_T> a.FC_DATE_END, a.FC_CURRENCY, a.FC_SUM_NDS, d.DG_NAME, a.FCA_GRNT_SUM, e.DFS_PUNTKT_SM
O_T>FROM FCT_CONTRACT a, DIM_FILIAL b, DIM_TIME c, DIM_GUARANTEE d, DIM_FIN_SOURCE e, FCT_FS_CONTRACT f
O_T>where a.KID_DIM_FILIAL = b.KID and a.KID_DIM_TIME = c.KID and f.KID_FCT_CONTRACT = a.KID and e.KID = f.KID_DIM_FIN_SOURCE
O_T>
O_T>Проблемма заключается в том, что в таблице DIM_FIN_SOURCE содержиться несколько значений относящиеся к "основной" таблице FCT_CONTRACT т.е. Для каждой получаемой записи, получается несколько значений DFS_PUNTKT_SM, их можно представить как конкантенацию значений, но как это релиазовать ни как не соображу!
Сложение символьных полей в запросе
Oper_Troll wrote:
>
> В общем есть запрос производящий выборку из нескольких таблиц.
> Приблизительный вид:
>
> SELECT distinct b.DF_NAME, a.FC_PREDMET, a.FCA_MAIL_NUM, a.FCA_MAIL_DATE , a.FC_CONTRACTOR, a.FC_NUM, c.DD_DATE, a.FC_DATE_BEGIN,
> a.FC_DATE_END, a.FC_CURRENCY, a.FC_SUM_NDS, d.DG_NAME, a.FCA_GRNT_SUM, e.DFS_PUNTKT_SM
> FROM FCT_CONTRACT a, DIM_FILIAL b, DIM_TIME c, DIM_GUARANTEE d, DIM_FIN_SOURCE e, FCT_FS_CONTRACT f
> where a.KID_DIM_FILIAL = b.KID and a.KID_DIM_TIME = c.KID and f.KID_FCT_CONTRACT = a.KID and e.KID = f.KID_DIM_FIN_SOURCE
>
>
>
> Проблемма заключается в том, что в таблице DIM_FIN_SOURCE содержиться
> несколько значений относящиеся к "основной" таблице FCT_CONTRACT т.е.
> Для каждой получаемой записи, получается несколько значений
> DFS_PUNTKT_SM, их можно представить как конкантенацию значений, но как
> это релиазовать ни как не соображу!
Может я не понял задачи, но по-моему left, right join'ы тут помогут.
Posted via RSDN NNTP Server 2.0