Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
16.03.2017, 10:36
|
|||
---|---|---|---|
|
|||
sql insert if not exists |
|||
#18+
сейчас вставляем данные в базу командой insert into users (mobile,email) values ('+71112223344', 'test@test.ru') как будет выглядеть команда которая при вставке сразу же проверит одновременно 3 условия есть ли в users 1. значение с mobile=+71112223344 и email=test@test.ru 2. только значение с mobile=+71112223344 3. только значение с email=test@test.ru и если mobile и / или email который нужно вставить в users есть в базе то возвратить id записи или false а если mobile и / или email нет, то вставить новую запись ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.03.2017, 10:46
|
|||
---|---|---|---|
|
|||
sql insert if not exists |
|||
#18+
sql_dev543сейчас вставляем данные в базу командой insert into users (mobile,email) values ('+71112223344', 'test@test.ru') как будет выглядеть команда которая при вставке сразу же проверит одновременно 3 условия есть ли в users 1. значение с mobile=+71112223344 и email=test@test.ru 2. только значение с mobile=+71112223344 3. только значение с email=test@test.ru и если mobile и / или email который нужно вставить в users есть в базе то возвратить id записи или false а если mobile и / или email нет, то вставить новую запись А если есть и email и mobile но id разные то чего возвращать? PS: а вообще хранимку для такого писать надо. -- Maxim Boguk www.postgresql-consulting.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.03.2017, 10:48
|
|||
---|---|---|---|
|
|||
sql insert if not exists |
|||
#18+
Maxim Boguk, false ... |
|||
:
Нравится:
Не нравится:
|
|||
|
16.03.2017, 11:12
|
|||
---|---|---|---|
sql insert if not exists |
|||
#18+
sql_dev543, это смотря какая бабель. т.е. если вы (или сервер приложения) работаете с этой табличкой строго в один поток -- то что-то типа Код: sql 1. 2. 3.
но поскольку гарантированная однопоточность -- редкость -- то надо писать хранимочку, думается. с обработкой исключений, подаренных конкурентными вставками/удалениями. Вряд ли мердж вас тут спасёт. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=53&tablet=1&tid=1996652]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 151ms |
0 / 0 |