184 похожих чатов

А это так и должно быть, что на такой запрос select if

(1 = 2,
arrayJoin([(0), (1), (2)]),
arrayJoin([(-1)]));
Возвращается 3 строчки с -1, если вставить напрямую 0 вместо ложного утверждения, то вернётся одна строчка -1?

5 ответов

7 просмотров

да, КХ проверяет обе ветки IFа параллельно. видимо 0 убирает лишнее на этапе парсинга а 1=2 нет...

а может и не на этапе парсинга, но можно обойти так... with (select 1=2 from system.one) as aaa select if (aaa, arrayJoin([(0), (1), (2)]), arrayJoin([(-1)]));

думаю лучше завести баг, чтобы поведение было "детерминированным"

Alex-S Автор вопроса
【D】【J】
думаю лучше завести баг, чтобы поведение было "дет...

Я таки нашёл похожий issue https://github.com/ClickHouse/ClickHouse/issues/8687

вообще лучше писать так и не парится... select arrayJoin(if(1=2, [(0), (1), (2)], [(-1)]));

Похожие вопросы

Обсуждают сегодня

А еще в перле можно уже @arr1 + @arr2?
Sergei Zhmylove
53
Привет всем. появился вопрос. Разрабатываю сайт, в данный момент он запущен. Хостинг beget. Добавляю на сайт яндекс метрику с помощью полей client-settings (взято отсюда http...
Andrew
2
я не магистр хаскеля, но разве не может лейзи тип конвертнуться в не-лейзи запросив вычисление содержимого прям при инициализации?
deadgnom32 λ madao
100
;.686 ;Система команд процессора 686 ;.MODEL FLAT,stdcall ;Модель памяти плоская, стандартный ;вызов процедуры ;option casemap:no...
Егор Анелькин
1
Всем привет! подскажите пожалуйста как можно увеличить качество фото?
Evgeniy
19
а как ловят такое ghci> res <- getPos2 urlt 0 (alist !! 0) 200 ghci> res SearchAtom (Search "www.google.com" "/search?q=" "Haskell") "haskell.org" (SearchTS [(2024-05-06 07:...
Fedor
14
Ребята, а из API геокодеров (по адресам в РФ) что сейчас актуального и есть ли среди актуального бесплатное/с нормаотным лимитом запросов? ситуация простая - на сайте периоди...
Dreamer_0x01 VeseloV
8
Добрый день, а есть ли возможность завернуть уже зашифрованный пасс в креденшл, в интернете натыкаюсь только на создание пары и ее шифровки, но тогда все равно нужно расшифров...
SSS
1
короче сгенерила мне эта штука код на ассемблере: struc string val { common local .value dq .value .value: if ~val eq db val end if db 0 } fo...
Vi Chapmann Chapmann
12
Всем привет! Массив вводится с клавиатуры, кол-во элементов неизвестно, поэтому я указал arr db 100 dup(?) С нахождением максимума проблем нет, а вот минимум почему-то всегд...
En Vind Av Sorg
11
Карта сайта