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

Postgresql налага уникална двупосочна комбинация от колони

Вариант на решението на Нийл, който не се нуждае от разширение, е:

create table friendz (
  from_id int,
  to_id int
);

create unique index ifriendz on friendz(greatest(from_id,to_id), least(from_id,to_id));

Решението на Нийл ви позволява да използвате произволен брой колони.

И двамата разчитаме на използването на изрази за изграждане на индекса, който е документиран https://www.postgresql.org/docs/current/indexes-expressional.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как justify_hours() работи в PostgreSQL

  2. Делението на цели числа връща 0

  3. Опашка за задания като SQL таблица с множество потребители (PostgreSQL)

  4. Къде са регистрационните файлове на PostgreSQL в macOS?

  5. Как да променя формата на датата в Postgres?