Re: Simple SQL question
От | Iain |
---|---|
Тема | Re: Simple SQL question |
Дата | |
Msg-id | 00d201c40598$9d96cc50$7201a8c0@mst1x5r347kymb обсуждение исходный текст |
Ответ на | Simple SQL question (Daniel Henrique Alves Lima <email_daniel_h@yahoo.com.br>) |
Список | pgsql-sql |
Sorry, did I write "ANALYSE SELECT .... "? It's supposed to be "EXPLAIN [ANALYSE] [VERBOSE] SELECT ..." ----- Original Message ----- From: "Daniel Henrique Alves Lima" <email_daniel_h@yahoo.com.br> To: <pgsql-sql@postgresql.org> Sent: Tuesday, March 09, 2004 1:21 PM Subject: Re: [SQL] Simple SQL question > Thank you, Jeremy. > > I've built a function that returns a string from (cd_teacher, cd_course) > and i've create a functional index over this function, like : > > create index teacher_course_idx on teacher_course > (build_unique_2p(cd_teacher,cd_course)); > select * from teacher_course where build_unique_2p(cd_teacher,cd_course) > in ('1:2','23:11','563','341'); > > Is it possible to use "array cast" over cd_teacher and cd_course (just > an idea, i don't known the sintaxe), like: > > select * from teachar_course where cast((cd_teacher,cd_course) as array) > in ('{1,2}','{23,11}','{563,341}'); > > ? > > I'm using postgreSQL 7.34 > > Thanks !!! > > Jeremy Semeiks wrote: > > >You could use a subselect of unions: > > > >select * from teacher_course where (cd_course, cd_teacher) in > >(select 1, 2 union select 23, 11 union select 563, 341) > > > >Maybe there's a more concise way, though. > > > >- Jeremy > > > > > > > > > > ---------------------------(end of broadcast)--------------------------- > TIP 9: the planner will ignore your desire to choose an index scan if your > joining column's datatypes do not match
В списке pgsql-sql по дате отправления: