FULL JOIN and mergjoinable conditions...
От | Martijn van Oosterhout |
---|---|
Тема | FULL JOIN and mergjoinable conditions... |
Дата | |
Msg-id | 20040630011331.GE29223@svana.org обсуждение исходный текст |
Ответы |
Re: FULL JOIN and mergjoinable conditions...
|
Список | pgsql-general |
Today I got the error: ERROR: FULL JOIN is only supported with mergejoinable join conditions Which is really annoying since a full join is exactly what I wanted. I guess the alternative is to do a left join and a right join and merge them? Is it just that no-one has come up with a way to code this efficiently? Maybe someone has a better way to express this. The problem is I have two tables with ranges and I wanted to generate a result with the overlaps and blanks where there are things missed. For example: Table A Table B Tag Start End Tag Start End A 1 2 A 2 7 B 6 9 B 9 9 C 10 12 C 13 15 So the query looks like: SELECT * from A full outer join B on (a.end >= b.start and b.end >= a.start) The result would be something like: A 1 2 A 2 7 B 6 9 A 2 7 B 6 9 B 9 9 C 10 12 \N \N \N \N \N \N C 13 15 Any ideas? -- Martijn van Oosterhout <kleptog@svana.org> http://svana.org/kleptog/ > Patent. n. Genius is 5% inspiration and 95% perspiration. A patent is a > tool for doing 5% of the work and then sitting around waiting for someone > else to do the other 95% so you can sue them.
Вложения
В списке pgsql-general по дате отправления: