PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Kembalikan Nilai Boolean sebagai TRUE atau FALSE di Select (PostgreSQL/pgAdmin)

Jika semua yang ingin Anda tampilkan adalah TRUE literal atau FALSE , Anda dapat menggunakan pernyataan kasus seperti yang Anda usulkan. Sejak PostgreSQL memperlakukan TRUE , true , yes , on , y , t dan 1 sebagai benar, saya akan mengontrol bagaimana saya ingin output terlihat seperti.

Dimana klausa dapat ditulis seperti:

select * from tablename where active
--or--
select * from tablename where active = true

(Rekomendasi saya sama dengan PostgreSQL - gunakan true)

Saat memilih, meskipun mungkin ada keraguan untuk menggunakan pernyataan kasus, saya tetap menyarankan Anda melakukannya untuk mengontrol literal string keluaran Anda.

Kueri Anda akan terlihat seperti ini:

select 
  case when active = TRUE then 'TRUE' else 'FALSE' end as active_status,
  ...other columns...
from tablename
where active = TRUE;

Contoh SQLFiddle:http://sqlfiddle.com/#!15/4764d/1

create table test (id int, fullname varchar(100), active boolean);
insert into test values (1, 'test1', FALSE), (2, 'test2', TRUE), (3, 'test3', TRUE);

select
  id,
  fullname,
  case when active = TRUE then 'TRUE' else 'FALSE' end as active_status
from test;

| id | fullname | active_status |
|----|----------|---------------|
|  1 |    test1 |         FALSE |
|  2 |    test2 |          TRUE |
|  3 |    test3 |          TRUE |


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. polimorfisme untuk batasan KUNCI ASING

  2. Hapus PostgreSQL dengan gabungan dalam

  3. Kueri PostgreSQL mengembalikan nilai yang tidak ada di database saya

  4. Cara mengonversi string tanggal ke stempel waktu tanpa mengetahui format tanggal

  5. Bagaimana saya bisa menautkan spreadsheet Google ke PostgreSQL?