Добро пожаловать в форум, Guest >> Войти | Регистрация | Поиск | Правила | | В избранное | Подписаться | ||
Все форумы / Microsoft SQL Server |
![]() ![]() |
U_rtqwec Member Откуда: Сообщений: 55 |
Всем привет! Помогите пожалуйста, не могу правильно удалить повторяющиеся строки, используется какое-то хитрое удаление.dealtransactID OpeationID DresourceID CresourceID Subconto dresourceB cresourceB --------------------------------------- --------------------------------------- --------------------------------------- --------------------------------------- ---------- -------------------- -------------------- 30000000115 30000000096 10000000015 10000002342 30 20202810300000000000 40817810500000000008 30000000115 30000000097 10000000015 10000002342 33 20202810300000000000 40817810500000000008 30000000116 30000000098 10000002342 10000000015 40 40817810500000000008 20202810300000000000 30000000116 30000000099 10000002342 10000000015 50 40817810500000000008 20202810300000000000 30000000117 30000000100 10000000016 10000000008 0 20202840600000000000 70601810100000000000 30000000117 30000000100 10000000016 10000002342 0 20202840600000000000 40817810500000000008 30000000117 30000000101 10000000016 10000000008 0 20202840600000000000 70601810100000000000 30000000117 30000000101 10000000016 10000002342 0 20202840600000000000 40817810500000000008 В этом примере лишними являются 5 и 8. Пробовал использовать DISTINCT, но получается совсем не то, удаляются лишние строки. |
14 фев 18, 13:43 [21190846] Ответить | Цитировать Сообщить модератору |
U_rtqwec Member Откуда: Сообщений: 55 |
Все должно быть завязано на уникальный OpeationID |
14 фев 18, 13:45 [21190854] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47061 |
U_rtqwec, как определить "повторяющиеся строки"?? Точно сформулируйте, пожалуйста. |
14 фев 18, 13:47 [21190862] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
а почему именно 5 и 8, а не 6 и 8 ? |
||
14 фев 18, 13:47 [21190864] Ответить | Цитировать Сообщить модератору |
iap Member Откуда: Москва Сообщений: 47061 |
Чем определяется? |
||
14 фев 18, 13:48 [21190865] Ответить | Цитировать Сообщить модератору |
U_rtqwec Member Откуда: Сообщений: 55 |
Действительно не задал критерий отбора для последних четырех строк, мозг уже отказывает. Есть другая таблица, назовем ее #TableOperationID CharType ResourceID DealTransactID --------------------------------------- -------- --------------------------------------- --------------------------------------- 30000000100 1 10000000016 30000000117 30000000100 -1 10000002342 30000000117 30000000101 1 10000000016 30000000117 30000000101 -1 10000000008 30000000117 Вот смотрите, берем OperationID = 30000000100, у него если CharType = 1, то ResourceID = 10000000016 должен попадать в DresourceID, а CharType = -1 с ResourceID = 10000002342 должен попадать в CresourceID. Аналогично с OperationID = 30000000101. А сейчас, как видно на примере выше, попало не правильно и нужно откорректировать полученный набор данных. |
14 фев 18, 14:04 [21190921] Ответить | Цитировать Сообщить модератору |
TaPaK Member Откуда: Kiev Сообщений: 6801 |
U_rtqwec,
а где в этом тексте про удаление? |
||
14 фев 18, 14:07 [21190930] Ответить | Цитировать Сообщить модератору |
U_rtqwec Member Откуда: Сообщений: 55 |
Я привел пример таблицы, на основании которой нужно удалить лишние данные в таблице из изначального вопроса. Сейчас в результирующей таблице лежат данные, которые на принадлежат необходимым ID. |
||||
14 фев 18, 14:29 [21191037] Ответить | Цитировать Сообщить модератору |
Konst_One Member Откуда: Сообщений: 11593 |
inner join что ли никак не выходит? |
14 фев 18, 14:42 [21191108] Ответить | Цитировать Сообщить модератору |
U_rtqwec Member Откуда: Сообщений: 55 |
Всем спасибо, я починил! |
14 фев 18, 15:10 [21191251] Ответить | Цитировать Сообщить модератору |
Все форумы / Microsoft SQL Server | ![]() |