Использование имени переменной, совпадающего с именем столбца — Clickhouse

У меня есть таблица mytable и mydate это столбец в ней. Однако, поскольку предложение SELECT является динамическим, мне нужно предварительно настроить столбец с помощью addMinutes. Таким образом, столбец добавляется к переменной с функцией, так что в случае, если столбец появляется в SELECT, переменная принимается вместо фактического значения в таблице.

SELECT mydate FROM "mytable"

исходное значение mydate возвращается


WITH addMinutes(mydate,300) AS mydate SELECT mydate FROM "mytable"

возвращается исходное значение mydate, ожидается, что будет возвращено значение переменной

Происходит прямо противоположное; Даже если упоминается переменная (то же имя, что и у столбца), фактическое значение столбца переопределяет предложение WITH.

Есть ли у нас обходной путь для использования переменных предложения WITH с теми же именами, что и у столбцов в таблице?

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
0
61
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Я не знаю никакого обходного пути. Реальный вопрос: зачем вам нужно предложение WITH, чтобы использовать одно и то же имя переменной?

Все работает как положено, если вы используете другое имя:

WITH 
   addMinutes(mydate, 300) AS mynewdate
SELECT 
   mynewdate,
   mydate 
FROM mytable; 

У меня есть сценарий, в котором предложение SELECT является динамическим и не может применять какие-либо функции даты или использовать альтернативное имя столбца.

Rejo Chandran 09.02.2023 07:24
Ответ принят как подходящий
SELECT
    * REPLACE addMinutes(mydate, 300) AS mydate, mytable.mydate
FROM mytable

Другие вопросы по теме