PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

CHỌN hoặc CHÈN một hàng trong một lệnh

Bạn đã thử kết hợp nó chưa?

Chỉnh sửa - điều này yêu cầu Postgres 9.1:

create table mytable (id serial primary key, other_key varchar not null unique);

WITH new_row AS (
INSERT INTO mytable (other_key)
SELECT 'SOMETHING'
WHERE NOT EXISTS (SELECT * FROM mytable WHERE other_key = 'SOMETHING')
RETURNING *
)
SELECT * FROM new_row
UNION
SELECT * FROM mytable WHERE other_key = 'SOMETHING';

kết quả là:

 id | other_key 
----+-----------
  1 | SOMETHING
(1 row)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Django-DB-Migrations:không thể ALTER TABLE vì nó có các sự kiện kích hoạt đang chờ xử lý

  2. PostgreSQL Chọn mục nhập gần đây nhất cho một ID nhất định

  3. Cách đặt thời gian chờ kết nối trong SQLAlchemy

  4. Cài đặt Tiện ích mở rộng PostgreSQL cho tất cả các lược đồ

  5. Cách chuẩn bị các câu lệnh và tham số liên kết trong Postgresql cho C ++