У меня есть таблица данных временного ряда, из которых мне нужно найти все столбцы, содержащие хотя бы одно ненулевое значение за данный период времени. До сих пор я использую следующий запрос:SQL find non-null columns
select max(field1),max(field2),max(field3),...
from series where t_stamp between x and y
Затем я проверяю каждое поле результата, если он содержит ненулевое значение.
Таблица содержит около 70 столбцов, а период времени может содержать> 100 тыс. Записей.
Интересно, если есть более быстрый способ сделать это (используя только стандартный sql).
EDIT: К сожалению, реорганизация дизайна стола для меня не является вариантом.
Он ищет, чтобы найти столбцы с хотя бы одним NULL, ваше решение дает NULL для строки, если все они NULL. Я не думаю, что это помогает с обнаружением отдельных столбцов. – paxdiablo 2008-12-01 12:11:46
@Pax: перечитайте заявление о проблеме. Он хочет найти NON-null столбцы, поэтому фильтрация строк даст минимум. – GalacticCowboy 2008-12-01 12:23:05