PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

PostgreSQL, SQL състояние:42601

Това създава анонимна съставна стойност:

select (1, 'a');

Например:

=> select (1, 'a');
  row  
-------
 (1,a)
(1 row)

=> select row(1, 'a');
  row  
-------
 (1,a)
(1 row)

Имайте предвид, че това е една съставна стойност, а не множество стойности.

От финото ръководство:

8.16.2. Съставно въвеждане на стойноста

За да напишете съставна стойност като литерална константа, оградете стойностите на полето в скоби и ги разделете със запетаи. Можете да поставите двойни кавички около всяка стойност на полето и трябва да го направите, ако съдържа запетаи или скоби.
[...]
ROW синтаксисът на изразите може също да се използва за конструиране на съставни стойности. В повечето случаи това е значително по-лесно за използване от синтаксиса на низовия литерал, тъй като не е нужно да се притеснявате за множество слоеве на цитиране. Вече използвахме този метод по-горе:

ROW('fuzzy dice', 42, 1.99)
ROW('', 42, NULL)

ROW ключовата дума всъщност не е задължителна, стига да имате повече от едно поле в израза, така че те могат да опростят до:

('fuzzy dice', 42, 1.99)
('', 42, NULL)

Конструкторите на редове раздел може също да представлява интерес.

Когато кажете това:

INSERT INTO circuit (id_circuit, description, date_start, date_end, speed,
length, duration)
SELECT (...)
FROM segment seg, wgs cir where seg.id = 13077

вашият SELECT клаузата има само една колона като целия (...) изразът представлява една стойност. Решението е просто да пуснете тези скоби:

INSERT INTO circuit (id_circuit, description, date_start, date_end, speed, length, duration)
SELECT seg.id_segment, ..., (seg.date_end - seg.date_start)
FROM segment seg, wgs cir where seg.id = 13077



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Комбинирайте две колони и добавете в една нова колона

  2. Как да създадете Postgres таблица с уникален комбиниран първичен ключ?

  3. Как да разделите низ в PostgreSQL

  4. PostgreSQL заявка за връщане на резултати като списък, разделен със запетая

  5. Как timeofday() работи в PostgreSQL