小编not*_*ing的帖子

根据另一个表中的数据在 FOR LOOP 中执行 Snowflake SQL 查询

在 Snowflake 中,我尝试创建一个带有 for 循环的 SQL 脚本,该脚本根据 data_type 列将结果输出到新表中

我有一个名为 PROFILE_TABLE_LIST 的表,其中的列具有表名和列名以及数据类型,如下所示:

表名 COLUMN_NAME 数据类型
表格1 植物 文本
表格1 高度 漂浮
表2 颜色 文本
表2 文本

我目前正在尝试使用游标执行 for 循环,并对每一行执行查询,以根据列类型分析表,如下所示:

表名 COLUMN_NAME 数据类型 数数 最长长度 MAX_VALUE
表格1 植物 文本 10 82 无效的
表格1 高度 漂浮 10 无效的 58.6
表2 颜色 文本 20 56 无效的
表2 文本 20 23 无效的

最终,我想根据 data_type 运行不同的 select 语句,但在这个阶段,我只关注计数。这是我当前的循环。但是,由于表名作为字符串传递,因此 select 语句无法正确执行,如果我使用 TABLE(tablename) ,我会收到语法错误(我在下面注释掉了该行:

declare
    tablename string;
    column_name string;
    row_count integer;
    table_schema string;
    table_catalog string; …
Run Code Online (Sandbox Code Playgroud)

sql for-loop snowflake-cloud-data-platform

1
推荐指数
1
解决办法
1万
查看次数

如何计算SQL Server中列中的单词数

是否有一个查询将返回列中的单词总数?我找到了一些代码,可以让我计算字符串中的单词,但不能将它应用于整个列.

我首先创建了从http://www.sql-server-helper.com/functions/count-words.aspx找到的函数:

CREATE FUNCTION [dbo].[WordCount] ( @InputString VARCHAR(4000) ) 
RETURNS INT
AS
BEGIN

DECLARE @Index          INT
DECLARE @Char           CHAR(1)
DECLARE @PrevChar       CHAR(1)
DECLARE @WordCount      INT

SET @Index = 1
SET @WordCount = 0

WHILE @Index <= LEN(@InputString)
BEGIN
    SET @Char     = SUBSTRING(@InputString, @Index, 1)
    SET @PrevChar = CASE WHEN @Index = 1 THEN ' '
                         ELSE SUBSTRING(@InputString, @Index - 1, 1)
                    END

    IF @PrevChar = ' ' AND @Char != ' '
        SET @WordCount = @WordCount + 1 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server

0
推荐指数
1
解决办法
472
查看次数

如何在python字典中找到最否定的键?

我正在尝试在字典imdb_dict中找到最正和最负的值:

imdb_dict = {'the': '0.0490972013402',
 'and': '0.201363575849',
 'a': '0.0333946807184',
 'of': '0.099837669572',
 'to': '-0.0790210365788',
 'is': '0.188660139871',
 'it': '0.00712569582356',
 'in': '0.109215821589',
 'i': '-0.154986397986'}

Run Code Online (Sandbox Code Playgroud)

使用此处找到的代码: 获取字典中具有最大值的键?

我可以使用以下方法获得字典的最大值:

imdb_dict = {'the': '0.0490972013402',
 'and': '0.201363575849',
 'a': '0.0333946807184',
 'of': '0.099837669572',
 'to': '-0.0790210365788',
 'is': '0.188660139871',
 'it': '0.00712569582356',
 'in': '0.109215821589',
 'i': '-0.154986397986'}

Run Code Online (Sandbox Code Playgroud)

但是,我找不到在字典中获得最大负值的方法,因为使用min会显示最接近0的值。是否可以通过修改运算符来获得最大负值的方法,还是有一种更简单的方法来完成该操作?

python

0
推荐指数
1
解决办法
75
查看次数