sql >> Database teknologi >  >> RDS >> PostgreSQL

VÆLG eller INDSÆT en række i én kommando

Har du prøvet at samle det?

Rediger - dette kræver 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';
 

resulterer i:

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

  1. lagrede procedurer med sqlAlchemy

  2. Sådan formateres en dato i T-SQL

  3. Er kolonne- og tabelnavne følsomme for store og små bogstaver i MySQL?

  4. Hvad er sql-forbindelsesstrengen, jeg skal bruge for at få adgang til localhost\SQLEXPRESS med Windows-godkendelse eller SQL-godkendelse?