|
|
|
Как вывести строки без повтора, учитывая пустые поля.
|
|||
|---|---|---|---|
|
#18+
Есть такая задача, где нужно вывести строки, которые не повторяются в таблице, также НЕ нужно выводить те строки где есть одна пустая ячейка(типа, которая может быть любым значением), но остальные поля имеют повтор в таблице. Тут я вывела те строки, которые не имеют повтора, а также не имеют пустых полей. select distinct Pole1,Pole2,Pole3 from TAB where Pole1 IS NOT NULL and Pole2 IS NOT NULL and Pole3 IS NOT NULL А вот тут я, вроде как, нашла те строки которые повторяются и одна из них имеет пустое поле: select distinct T1.Pole1,T1.Pole2,T1.Pole3 from TAB T1,TAB T2 where (T1.Pole1 IS NULL and T1.Pole2=T2.Pole2 and T1.Pole3=T2.Pole3) OR (T1.Pole1=T2.Pole1 and T1.Pole2 IS NULL and T1.Pole3=T2.Pole3) OR (T1.Pole1=T2.Pole1 and T1.Pole2=T2.Pole2 and T1.Pole3 IS NULL) Хотя похоже это не работает, потому что выводит и те которые не повторяются, но имеют пустое значение. Ибо, даже если есть пустое значение в строке, но остальные заполненные поля не имеют повтора в таблице, то эту строку тоже нужно выводить в ответ. Помогите, пожалуйста, сделать правильную выборку. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2018, 15:09 |
|
||
|
Как вывести строки без повтора, учитывая пустые поля.
|
|||
|---|---|---|---|
|
#18+
КатяраНЕ нужно выводить те строки где есть одна пустая ячейкаЕсли посмотреть с другой стороны, то фраза будет звучать так: выбрать лишь те строки, у которых НЕ СУЩЕСТВУЕТ пустых ячеек. НЕ СУЩЕСТВУЕТ по английски - NOT EXISTS же? Вот про него в SQL и читайте... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.09.2018, 19:10 |
|
||
|
Как вывести строки без повтора, учитывая пустые поля.
|
|||
|---|---|---|---|
|
#18+
Щукина Анна, я тут нашла ошибку в своих словах. Нужно вывести строки как раз таки в которых есть пустое поле, а остальные поля имеют дубликат в таблице. Например, строка (1 2 3) будет дубликатом строки 1 2 NULL и строку 1 2 3 выводить не нужно, т.к. по заданию NULL может быть любым значением. Поэтому в ответе должны быть строки с NULL, и те строки которые заполнены полностью и поля которых никак не дублируют поля строк, в которых есть NULL, воот, запутанное задание попалось :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 13:31 |
|
||
|
Как вывести строки без повтора, учитывая пустые поля.
|
|||
|---|---|---|---|
|
#18+
Получится что-то вроде Код: sql 1. 2. 3. 4. 5. 6. 7. 8. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.09.2018, 15:52 |
|
||
|
|

start [/forum/topic.php?fid=47&fpage=47&tid=1829626]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
36ms |
get tp. blocked users: |
1ms |
| others: | 11ms |
| total: | 123ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...