Последовательность с переменной - PullRequest
1 голос
/ 19 февраля 2010

В SQL у нас будет последовательность. Но он должен быть добавлен к такой переменной

M1,M2,M3,M4....

Есть ли способ сделать это?

Ответы [ 2 ]

9 голосов
/ 19 февраля 2010

Рассмотрите возможность хранения префикса в отдельном столбце таблицы, например:

CREATE TABLE mytable (
   idprefix VARCHAR2(1) NOT NULL,
   id       NUMBER NOT NULL,
   CONSTRAINT mypk PRIMARY KEY (idprefix, id)
);

В приложении или в представлении можно объединить значения вместе.Или, в 11g вы можете создать виртуальный столбец, который объединяет их.

Я даю 99% вероятности, что кто-то скажет: «мы хотим искать ID 12345 независимо от префикса», и этот дизайн означает, чтохороший поиск по индексу вместо "LIKE '% 12345'".

4 голосов
/ 19 февраля 2010
select 'M' || my_sequence.nextval from dual;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...