Re: Using CASE with a boolean value
От | Joel Burton |
---|---|
Тема | Re: Using CASE with a boolean value |
Дата | |
Msg-id | JGEPJNMCKODMDHGOBKDNAEHECPAA.joel@joelburton.com обсуждение исходный текст |
Ответ на | Using CASE with a boolean value (Tom Ansley <tansley@law.du.edu>) |
Список | pgsql-novice |
> I'm trying to use a case statement with a boolean value. i.e. > if the value = > false then output 'NO', if value = true then output 'YES'. This > is what I > came up with > > CASE booking.quiz > WHEN booking.quiz=false THEN 'No' > WHEN booking.quiz=true THEN 'Yes' > ELSE 'No' > END > > But, it isn't working. Everything compiles and the rows returned > are correct > but it still returns 'true' or 'false' rather than 'YES' or 'NO'. > I've also > tried this > > CASE booking.quiz > WHEN booking.quiz='f' THEN 'No' > WHEN booking.quiz='t' THEN 'Yes' > ELSE 'No' > END > > and this > > CASE booking.quiz > WHEN booking.quiz='false' THEN 'No' > WHEN booking.quiz='true' THEN 'Yes' > ELSE 'No' > END > > Anybody got any ideas? Should the value be cast into a string? create table bools (b bool); insert into bools values (true); insert into bools values (false); select case b when true then 'yes' when false then 'no' else 'unknown' end from bools; case ------ yes no (2 rows) Seems to work just fine. Can you post a full example of this not working, please? - J. Joel BURTON | joel@joelburton.com | joelburton.com | aim: wjoelburton Knowledge Management & Technology Consultant
В списке pgsql-novice по дате отправления: