Форум программистов, компьютерный форум, киберфорум
Наши страницы
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
СyberSpec
Кибернетик
462 / 86 / 12
Регистрация: 10.04.2009
Сообщений: 424
1

Выборка ошибочных данных, возможна?

10.05.2011, 10:14. Просмотров 778. Ответов 8
Метки нет (Все метки)

Приветствую.

Имеется таблица:
-----------------------------------------------
ONUM | AMT | ODATE | CNUM | SNUM
-------|------|-------------|------|------
3001 | 18.69 | 10/03/1990 | 2008 | 1007
3003 | 767.19 | 10/03/1990 | 2001 | 1001
3003 | 767.19 | 10/03/1990 | 2001 | 1001
3013 | 767.19 | 10/03/1990 | 2001 | 1001
3010 | 1309.95 | 10/06/1990 | 2004 | 1002
3011 | 9891.88 | 10/06/1990 | 2006 | 1001
-----------------------------------------------

Строка выделенная жирным ошибочна и нужно ее найти. Ошибочна она потому, что есть строки (2 или больше) с точно такими же данными, но есть отличие в 1м символе. Получается что ONUM надо исправить на 3003. Тут стоит задача только найти такую строку, с отличием в 1 символ в любом поле, от 2х и более подобных строк.

Может кто нибудь подсказать как такое реализовать на sql?
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.05.2011, 10:14
Ответы с готовыми решениями:

Очистка набора данных от ошибочных значений
Имеется набор значений, кол-во элементов примерно 1000. Пример:...

Добавить проверку на ввод ошибочных данных
Пожалуйста, помогите сделать так чтобы при вводе ошибочных данных выходил текст "vveli nekorrektnie...

Возможна ли выборка из QSqlQuery через итератор в версии Qt 5.5.1
Либо существует ли hasNext() или чем его заменить? QSqlQuery query; query.exec("SELECT * FROM...

Работа с TextBox и датами при ошибочных данных
Есть форма UserForm с кнопкой CommandButton1 и текстовым полем TextBox1. Если кликнуть по кнопке...

Возможна ли работа базы данных 1С в Qt?
Приветствую. Возможно название не правильно сформулировано, но все же. Моему отцу на предприятие...

8
dontgiveafk
36 / 16 / 0
Регистрация: 29.01.2010
Сообщений: 252
10.05.2011, 12:01 2
select Onum from table where onum not in (select max(Onum) from table group by [по_всем_остальным_полям_кроме_onum])

или

select max(Onum) from table group by [по_всем_остальным_полям_кроме_onum] having count(*)>1
0
СyberSpec
Кибернетик
462 / 86 / 12
Регистрация: 10.04.2009
Сообщений: 424
10.05.2011, 12:46  [ТС] 3
смысл не в том чтоб найти запись из примера.

нужно найти строку, такую для которой есть строки (2 или больше) с точно такими же данными, но есть отличие в 1м символе в любом поле.
0
dontgiveafk
36 / 16 / 0
Регистрация: 29.01.2010
Сообщений: 252
10.05.2011, 12:59 4
если к посмотреть на мой пример и буквально чуть-чуть подумать, то можно найти в любой таблице повторяющиеся поля
0
10.05.2011, 12:59
СyberSpec
Кибернетик
462 / 86 / 12
Регистрация: 10.04.2009
Сообщений: 424
10.05.2011, 13:14  [ТС] 5
Цитата Сообщение от dontgiveafk Посмотреть сообщение
если к посмотреть на мой пример и буквально чуть-чуть подумать, то можно найти в любой таблице повторяющиеся поля
Ты слишком буквально понимаешь. Этот пример не относиться к делу. Он только для понимания задачи. На реальном примере поля содержат значения разных типов. Текстовые в основном. К примеру:

Иванов | Иван | Иванович | М | 55 |
Иванов | Иван | Иванович | М | 55 |
Иванов | Ивая | Иванович | М | 55 |
Иванов | Иван | Иванович | Ж | 55 |
Иванов | Иван | Иванович | М | 56 |

Жирным выделил ошибки, которые нужно ловить. Получается Выборка должна дать такой результат:

Иванов | Ивая | Иванович | М | 55 |
Иванов | Иван | Иванович | Ж | 55 |
Иванов | Иван | Иванович | М | 56 |
0
dontgiveafk
36 / 16 / 0
Регистрация: 29.01.2010
Сообщений: 252
10.05.2011, 14:26 6
эт уже к вопросу о анализе стоковых переменных, в моем понимании эт ппц. Мне ет тоже как-то было нужно, но я решил вопрос заведением справочника эталонов. Если слова нет в справочнике то его сначала предлагалось завести, а так просто выбрать среди уже заведенных данных ет UNREAL по моему
1
СyberSpec
Кибернетик
462 / 86 / 12
Регистрация: 10.04.2009
Сообщений: 424
10.05.2011, 14:57  [ТС] 7
Есть же "курсоры" кажется.. Я SQL плохо знаю, но там теоретически это вроде бы возможно. Ну можно ведь? Есть же циклы, переменные.. Если искать ошибку только в первом текстовом поле к примеру.. Потом по аналогии для остальных полей свои запросы можно будет написать..
0
dontgiveafk
36 / 16 / 0
Регистрация: 29.01.2010
Сообщений: 252
10.05.2011, 15:34 8
не представляю алгоритма по которому надо искать. Если вы напишите алгоритм четкий словами я переведу его на sql
0
СyberSpec
Кибернетик
462 / 86 / 12
Регистрация: 10.04.2009
Сообщений: 424
21.09.2011, 08:08  [ТС] 9
Решение в теме - Select ошибок-очепяток в данных
0
21.09.2011, 08:08
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.09.2011, 08:08

Возможна ли связка между 1с (как источник данных) и access 2003 (как обработчик этих данных)
Хочу сделать 1с как источник данных, но не знаю как подключить к акцесу, кто может объяснить как,...

Архиватор данных - возможна ли оптимизация программы?
Привет! На С++ делаю конвертер видео в различные форматы. На входе несколько выбранных...

Возможна ли передача данных по Wi-Fi и интернету между Java и C#?
Нужно передавать данные о файлах между Android и Windows. Сам уверен, что это возможно, но на...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru