Обсуждение: Re: parametered views

Поиск
Список
Период
Сортировка

Re: parametered views

От
Rodrigo De León
Дата:
lhaj.merigh@gmail.com ha escrito:
> Hello,
>
> my problem is :  in depend of the value of a field in a table A, I
> want to select other fields coming from a table B, or a table  C.
>
> I want to know if it's possible to create a parametred view in
> postgresql to resolve this problem
>
>
> Thx,
> Lhaj

You really should be more specific...


Re: parametered views

От
Rodrigo De León
Дата:
On Jun 8, 7:59 pm, "lhaj.mer...@gmail.com" <lhaj.mer...@gmail.com>
wrote:
> i have 4 tables :
>
> date_table (date_id,.....)
> A_table(A_table_id, something1,something2.........)
> A1_table(A1_table_id references A_Table(A_Table_id),A11,A12........)
> A2_table(A2_table_id references A_Table(A_table_id),A21,A22,.......)
>
> so i want to create a view with date_id,A_table_id,something1,
> if something2=x then my view containts
>  (A1_table.A11 and A1_table.A12)
>  else it's containts (A2_table.A21 and A2_table.A22))
>
> so my view depends of something2 value.
>
> I hope i'm specific
>
> Thx
> Lhaj

create view foobar as
select date_id,A_table_id,something1
,case when something2=x then A1_table.A11 else A2_table.A21 end as foo
,case when something2=x then A1_table.A12 else A2_table.A22 end as bar
from (... etc., etc. ...)


Re: parametered views

От
Alban Hertroys
Дата:
Rodrigo De León wrote:
> On Jun 8, 7:59 pm, "lhaj.mer...@gmail.com" <lhaj.mer...@gmail.com>
> wrote:
>> i have 4 tables :
>>
>> date_table (date_id,.....)
>> A_table(A_table_id, something1,something2.........)
>> A1_table(A1_table_id references A_Table(A_Table_id),A11,A12........)
>> A2_table(A2_table_id references A_Table(A_table_id),A21,A22,.......)
>>
>> so i want to create a view with date_id,A_table_id,something1,
>> if something2=x then my view containts
>>  (A1_table.A11 and A1_table.A12)
>>  else it's containts (A2_table.A21 and A2_table.A22))
>>
>> so my view depends of something2 value.
>>
>> I hope i'm specific
>>
>> Thx
>> Lhaj
>
> create view foobar as
> select date_id,A_table_id,something1
> ,case when something2=x then A1_table.A11 else A2_table.A21 end as foo
> ,case when something2=x then A1_table.A12 else A2_table.A22 end as bar
> from (... etc., etc. ...)

Not sure what you're trying to say here... You didn't formulate a question.

Maybe you mean this?:

CREATE VIEW foobar AS
SELECT date_id, A_table_id, A1_table.A11, A1_table.A12
 WHERE something2 = x
UNION
SELECT date_id, A_table_id, A2_table.A21, A2_table.A22
 WHERE something2 <> x

In case the records in the result sets matching something2 = x and the
ones not matching are distinct or if you don't care about duplicates,
use UNION ALL instead of UNION.

--
Alban Hertroys
alban@magproductions.nl

magproductions b.v.

T: ++31(0)534346874
F: ++31(0)534346876
M:
I: www.magproductions.nl
A: Postbus 416
   7500 AK Enschede

// Integrate Your World //


Re: parametered views

От
"lhaj.merigh@gmail.com"
Дата:
On Jun 9, 8:12 am, Rodrigo De Le�n <rdele...@gmail.com> wrote:
> On Jun 8, 7:59 pm, "lhaj.mer...@gmail.com" <lhaj.mer...@gmail.com>
> wrote:
>
>
>
> > i have 4 tables :
>
> > date_table (date_id,.....)
> > A_table(A_table_id, something1,something2.........)
> > A1_table(A1_table_id references A_Table(A_Table_id),A11,A12........)
> > A2_table(A2_table_id references A_Table(A_table_id),A21,A22,.......)
>
> > so i want to create a view with date_id,A_table_id,something1,
> > if something2=x then my view containts
> >  (A1_table.A11 and A1_table.A12)
> >  else it's containts (A2_table.A21 and A2_table.A22))
>
> > so my view depends of something2 value.
>
> > I hope i'm specific
>
> > Thx
> > Lhaj
>
> create view foobar as
> select date_id,A_table_id,something1
> ,case when something2=x then A1_table.A11 else A2_table.A21 end as foo
> ,case when something2=x then A1_table.A12 else A2_table.A22 end as bar
> from (... etc., etc. ...)

OK, thank you (the idea is here i will try to do that)


Re: parametered views

От
"lhaj.merigh@gmail.com"
Дата:
i have 4 tables :

date_table (date_id,.....)
A_table(A_table_id, something1,something2.........)
A1_table(A1_table_id references A_Table(A_Table_id),A11,A12........)
A2_table(A2_table_id references A_Table(A_table_id),A21,A22,.......)

so i want to create a view with date_id,A_table_id,something1,
if something2=x then my view containts
 (A1_table.A11 and A1_table.A12)
 else it's containts (A2_table.A21 and A2_table.A22))

so my view depends of something2 value.

I hope i'm specific

Thx
Lhaj