Я нашел несколько ответов, очень близких к решению, но не могу их применить из-за неопытности.MySQL view/query для удаления почти повторяющихся строк
Как:
SQL Remove almost duplicate rows
SQLite3 Remove almost duplicate rows
Я упростить это, чтобы только столбцы, где проблема, но мне нужно, чтобы вернуть всю строку данных.
Колонны:
RecNbr, MPCNbr, ABCNbr
1, 123, 123
2, 12080, 123
3, 456, 456
4, 789, 987
5, 321, 987
6, 0053, <NULL>
7, 0021, ''
Когда я запрашиваю, что данные, которые я хотел бы видеть строки 2-7, но не 1.
Мои данные две строки, которые представляют собой один и тот же элемент, один с различными чем другой, мне нужно вернуть тот, где MPCNbr и ABCNbr НЕ соответствуют, но ТОЛЬКО, когда у меня есть еще одна строка с тем же ABCNbr.
Я хотел бы, чтобы это было представление, поэтому я могу запросить его как таблицу. Будет добавлено больше записей, и это будет повторяться, поэтому я хочу просмотр.
Это решение не позволит мне создать представление, я получаю сообщение об ошибке «View SELECT содержит подзапрос в предложении FROM». – Yourguide
Это на самом деле лучший ответ .... НО У меня проблема, потому что некоторые из моих полей ABCNbr имеют NULL, а некоторые пустые. ОШИБКИ NULL остаются вне окончательного набора результатов. Есть ли способ оценить как NULL, так и пустой как пустой, чтобы сравнения могли выполняться? Когда появятся новые данные, я боюсь, что больше NULLS снова появится. Я попробовал IFNULL() внутри выбора левого соединения, но у меня все еще есть три вида записей .... NULL, Empty и те, у которых есть ABCNbr – Yourguide
Я не понимаю эту проблему. можете ли вы объяснить пример источника данных и набор результатов на основе этих данных, чтобы проиллюстрировать, в чем проблема. – Alex