С Новым годом! Форум программистов, компьютерный форум, киберфорум
Microsoft SQL Server
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
Кибернетик
 Аватар для СyberSpec
465 / 89 / 12
Регистрация: 10.04.2009
Сообщений: 424

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

10.05.2011, 10:14. Показов 1124. Ответов 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
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
10.05.2011, 10:14
Ответы с готовыми решениями:

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

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

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

8
36 / 16 / 0
Регистрация: 29.01.2010
Сообщений: 252
10.05.2011, 12:01
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
465 / 89 / 12
Регистрация: 10.04.2009
Сообщений: 424
10.05.2011, 12:46  [ТС]
смысл не в том чтоб найти запись из примера.

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

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

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

Иванов | Ивая | Иванович | М | 55 |
Иванов | Иван | Иванович | Ж | 55 |
Иванов | Иван | Иванович | М | 56 |
0
36 / 16 / 0
Регистрация: 29.01.2010
Сообщений: 252
10.05.2011, 14:26
эт уже к вопросу о анализе стоковых переменных, в моем понимании эт ппц. Мне ет тоже как-то было нужно, но я решил вопрос заведением справочника эталонов. Если слова нет в справочнике то его сначала предлагалось завести, а так просто выбрать среди уже заведенных данных ет UNREAL по моему
1
Кибернетик
 Аватар для СyberSpec
465 / 89 / 12
Регистрация: 10.04.2009
Сообщений: 424
10.05.2011, 14:57  [ТС]
Есть же "курсоры" кажется.. Я SQL плохо знаю, но там теоретически это вроде бы возможно. Ну можно ведь? Есть же циклы, переменные.. Если искать ошибку только в первом текстовом поле к примеру.. Потом по аналогии для остальных полей свои запросы можно будет написать..
0
36 / 16 / 0
Регистрация: 29.01.2010
Сообщений: 252
10.05.2011, 15:34
не представляю алгоритма по которому надо искать. Если вы напишите алгоритм четкий словами я переведу его на sql
0
Кибернетик
 Аватар для СyberSpec
465 / 89 / 12
Регистрация: 10.04.2009
Сообщений: 424
21.09.2011, 08:08  [ТС]
Решение в теме - Select ошибок-очепяток в данных
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
21.09.2011, 08:08
Помогаю со студенческими работами здесь

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

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

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

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

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


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Изучаю kubernetes
lagorue 13.01.2026
А пригодятся-ли мне знания kubernetes в России?
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru