Search Postgresql Archives

Re: SQL query

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



David Goodenough wrote:

I could do this by doing a select * from addresses where customer = ?
and type = 'billing', looking to see if there is a result row and if not
repeating the query with type = 'default', but that seems inelegant to me.


Use NULL to indicate that the customer type is default. Then you can query with:

select * from addresses where customer = ? and coalesce(type, 'billing') = 'billing'

If type is NULL, the comparison will be 'billing' = 'billing' - always true. If there's a bunch of non-null type addresses, you'll get the 'billing' one.

http://www.postgresql.org/docs/8.0/interactive/functions-conditional.html#AEN12003

Matt




---------------------------(end of broadcast)--------------------------- TIP 8: explain analyze is your friend

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux