Конструкции CASE в командах
Листинг 4.50. Конструкции CASE в командах
booktown=# SELECT isbn,
booktown-# CASE WHEN cost >
20 THEN 'over $20.00 cost'
booktown-# WHEN cost = 20 THEN '$20.00 cost1
booktown-# ELSE 'under $20.00 cost'
booktown-# END AS cost_range
booktown-# FROM stock
booktown-# LIMIT 8;
Isbn | cost_range
0385121679 | over $20.00 cost
039480001X | over $20.00 cost
044100590X | over $20.00 cost
0451198492 | over $20.00 cost
0394900014 | over $20.00 cost
0441172717 | under $20.00 cost
0451160916 | over $20.00 cost
0679803335 | $20.00 cost
(8 rows)
Подзапросы PostgreSQL расширяют возможности конструкций CASE (см. раздел «Подзапросы»). Как показано в листинге 4.51, в качестве результата условного выражения в конструкции может быть задан подзапрос.