Всем привет!
Нужно в таблице оставить строку с незаконченным процессом, т.е. там где EndTime = '-'.
Load * Inline [
Machine, StartTime, EndTime, Duration,Describe
11111, 08.06.2018 08:32:48, -, 04:06:56, Process1
11111, 08.06.2018 08:32:42, 08.06.2018 08:32:48, 04:09:02, Process2
11111, 08.06.2018 08:31:19, 08.06.2018 08:32:42, 04:12:25, Process3
]
Мне казалось, что это так просто, но у меня ничего не получается.
Привет, а что не так?
Надо оставить именно одну строку где нет EndTime ?
Я это понимаю, но как?
Цитата: Tatsiana от 08 июня 2018, 02:25:22
Я это понимаю, но как?
where?
Where EndTime= '-'
Большое спасибо за ответ, но я не знаю как записать выражение с Where и нигде не могу найти примеров.
Не могли бы вы написать предложение полностью.
Load
*
Inline [
Machine, StartTime, EndTime, Duration,Describe
11111, 08.06.2018 08:32:48, -, 04:06:56, Process1
11111, 08.06.2018 08:32:42, 08.06.2018 08:32:48, 04:09:02, Process2
11111, 08.06.2018 08:31:19, 08.06.2018 08:32:42, 04:12:25, Process3
]
Where
EndTime = '-';
Спасибо, пример работает, но когда я вставляю в свою таблицу, то получаю сообщение об ошибке:
The following error occurred:
Connector reply error: SQL##f - SqlState: 22008, ErrorCode: 242, ErrorMsg: [Microsoft][SQL Server Native Client 11.0][SQL Server]The conversion of a varchar data type to a datetime data type resulted in an out-of-range value.
Формат даты изменила на
SET TimestampFormat='YYYY-MM-DD hh:mm:ss[.fff]';
Всё равно выдает ошибку.
У вас скорей всего идет запрос к MS SQL.
Какой текст запроса?
В sql нет понятия "пустая дата", в поле даты будет возвращаться дата по умолчанию, начальная.
Т.е. 0 это будет 01/01/1900 или другая, стартовая для СУБД источника.
Спасибо!
В операторе Select:
Where EndTime is NULL
или NullDisplay()
SET NullDisplay='<NULL>';
В операторе Load:
If(EndTime='<NULL>', EndTime) as EndTime
http://blog.atkcg.ru/qlik-sense-rabota-so-znacheniyami-null/ (http://blog.atkcg.ru/qlik-sense-rabota-so-znacheniyami-null/)