在 Clickhouse 桌子上循环

问题描述 投票:0回答:1

如何循环clickhouse数据库中的表? Clickhouse 对于某些可迭代场景没有循环和存储过程。

我想将 pandas queris 更改为 SQL,但表上有 for 循环,但在 Clickhouse 中我们没有这些命令。在这种情况下我该怎么办?

database loops artificial-intelligence bigdata clickhouse
1个回答
0
投票

SQL 语句对数据集执行操作,因此迭代行集合是没有意义的。 控制流语句有可能对您有所帮助(例如

CASE
):

import pandas as pd

# Sample DataFrame
df = pd.DataFrame({'value': [8, 12, 5, 14, 10]})

# Increment 'value' by 1 if it's greater than 10
result_values = []
for index, row in df.iterrows():
    if row['value'] > 10:
        result_values.append(row['value'] + 1)
    else:
        result_values.append(row['value'])

# Create a new DataFrame with the results
result_df = pd.DataFrame({'result_value': result_values})

会变成:

SELECT 
    CASE 
        WHEN value > 10 THEN value + 1 
        ELSE value 
    END AS result_value
FROM your_table;
© www.soinside.com 2019 - 2024. All rights reserved.