Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
Пытаюсь удалить из таблицы совпадающих гуид, сравнивая со второй таблицей другой базе. Код: sql 1. 2. 3. 4. 5. 6. в этом запросе удаляет даже если гуид единственный. Как сделать чтобы не удалял единственную данную. Условия вроде правильное, проверял когда в документе несколько совпадающих гуид с разными тарифами. А когда запись то удаляет тоже потому что этот единственный гуид существует второй базе, с одинаковым тарифом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2018, 11:23 |
|
||
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
El_Ninio, Воспользуйся тегом SRC и заодно отформатируй запрос до читабельного вида. Ломать глаза, выясняя почему тут id not in (.. having count(*)>1) не хочется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2018, 11:34 |
|
||
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
И по дате условие, небось, такое: Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2018, 11:50 |
|
||
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
Код: sql 1. лучше вообще не применять. El_Ninio, а нельзя ли как-то причесать текст, описывающий вашу проблему? Чтобы понять чего-нибудь было можно. К примеру, не понял суть обращений к какой-то "второй таблице в другой базе". Зачем? Что удалить-то надо, если по-простому, "на пальцах"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2018, 11:55 |
|
||
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
Обычно дубликаты удаляют по принципу Код: sql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2018, 12:10 |
|
||
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
AkinaОбычно дубликаты удаляют по принципу Код: sql 1. 2. 3. 4. 5. 6. Можно приладить CTE. Да вот, и сегодня такая тема есть: https://www.sql.ru/forum/1306651/nepravilno-udalyautsya-dubli ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2018, 13:35 |
|
||
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
iap , говоря "обычно", я имел в виду максимально общий подход - в т.ч. включая DBMS и версии, которые про CTE не слыхали... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2018, 15:27 |
|
||
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
El_Ninio, https://stackoverflow.com/questions/39564777/need-to-delete-duplicate-records-from-the-table-using-row-number Код: sql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.12.2018, 17:17 |
|
||
|
удаление одинаковых гуид
|
|||
|---|---|---|---|
|
#18+
Удалить повторяющиеся данные это понятно, но тут условие же есть. Вообщем, есть 2 базы и у обоих есть таблица smtap . В первой базе в некоторых документах (это другая таблица DOC) у которых в таблице SMTAP есть повторяющие данные, которые входят во второй базе, и есть не повторяющие и не входящие во второй базе данные. Данные которые входят в двух базах, они идентичны по гуиду и бывают еще документы у которые гуид идентичен в двух базаях но отличается тариф. Связать эти две таблицы в разных базах только по гуиду, потому что айди документов совсем разные. Табл1 База1 SMTAPID DOCID SMTAPGuid TARIFF 628322 1 1 246776 0 AFD28DB0-87E9-E811-80FD-AC1F6B023FFE 0.5 628323 1 1 246776 0 AFD28DB0-87E9-E811-80FD-AC1F6B023FFE 0.5 630570 1 1 246776 0 D4591B22-88E9-E811-80FD-AC1F6B023FFE 0.3 630571 1 1 246776 0 D4591B22-88E9-E811-80FD-AC1F6B023FFE 0.3 630583 1 1 246776 0 D5591B22-88E9-E811-80FD-AC1F6B023FFE 0.14 630584 1 1 246776 0 D5591B22-88E9-E811-80FD-AC1F6B023FFE 0.14 630032 1 1 246776 0 3570E808-62D6-E811-ABE4-002590DC252E 1 605149 1 1 246776 0 4D8F3D13-4ADB-E811-A85C-002590DC252E 0.2 628972 1 1 246776 0 4D8F3D13-4ADB-E811-A85C-002590DC252E 0.2 628973 1 1 246776 0 4D8F3D13-4ADB-E811-A85C-002590DC252E 15 Табл2 База 2 199322 1 1 101 0 AFD28DB0-87E9-E811-80FD-AC1F6B023FFE 0.5 199570 1 1 101 0 D4591B22-88E9-E811-80FD-AC1F6B023FFE 0.3 203583 1 1 101 0 D5591B22-88E9-E811-80FD-AC1F6B023FFE 0.14 191972 1 1 101 0 4D8F3D13-4ADB-E811-A85C-002590DC252E 0.2 Еще такие случаи могут быть Табл1 База1 SMTAPID DOCID SMTAPGuid TARIFF 628322 1 1 246776 0 AFD28DB0-87E9-E811-80FD-AC1F6B023FFE 7 Табл2 База 2 199322 1 1 101 0 AFD28DB0-87E9-E811-80FD-AC1F6B023FFE 0.5 199570 1 1 101 0 D4591B22-88E9-E811-80FD-AC1F6B023FFE 0.3 203583 1 1 101 0 D5591B22-88E9-E811-80FD-AC1F6B023FFE 0.14 191972 1 1 101 0 4D8F3D13-4ADB-E811-A85C-002590DC252E 0.2 в этом случае пропускает. Единственная запись должно остаться. А если две записи ну к примеру вот так. Табл1 База1 SMTAPID DOCID SMTAPGuid TARIFF 628322 1 1 246776 0 AFD28DB0-87E9-E811-80FD-AC1F6B023FFE 7 699322 1 1 246776 0 AFD28DB0-87E9-E811-80FD-AC1F6B023FFE 0.5 Табл2 База 2 199322 1 1 101 0 AFD28DB0-87E9-E811-80FD-AC1F6B023FFE 0.5 199570 1 1 101 0 D4591B22-88E9-E811-80FD-AC1F6B023FFE 0.3 203583 1 1 101 0 D5591B22-88E9-E811-80FD-AC1F6B023FFE 0.14 191972 1 1 101 0 4D8F3D13-4ADB-E811-A85C-002590DC252E 0.2 в этом случае должна остаться вторая запись первой бд ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.12.2018, 16:04 |
|
||
|
|

start [/forum/topic.php?fid=46&tid=1688601]: |
0ms |
get settings: |
6ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
77ms |
get topic data: |
8ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 379ms |

| 0 / 0 |
