DataWorks我想用in去查询,该如何操作?

DataWorks如果我的某个字段存储的数据是 1,2,3,4 或者 [1,2,3,4] 我想用in去查询,该如何操作?

展开
收起
真的很搞笑 2023-10-29 19:11:33 175 分享 版权
3 条回答
写回答
取消 提交回答
  • 在DataWorks中,如果你想要查询一个字段中包含值1,2,3,4的情况,你可以使用IN语句。假设你的字段名为field_name,你可以这样写查询语句:

    SELECT * FROM table_name WHERE field_name IN (1, 2, 3, 4);
    

    如果你想查询字段值为列表[1,2,3,4]的情况,你可以这样写查询语句:

    SELECT * FROM table_name WHERE field_name IN ('[1, 2, 3, 4]');
    

    注意,这里需要将列表用单引号括起来,因为IN语句不支持直接比较数组。

    2023-10-30 14:46:24
    赞同 展开评论
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    在DataWorks中,如果您想使用IN操作符来查询某个字段中包含特定值的数据,您可以按照以下步骤进行操作:

    1. 打开DataWorks并选择您的项目。
    2. 在“数据开发”菜单中,选择“SQL开发”选项卡。
    3. 在打开的窗口中,输入您的查询语句。

    例如,如果您有一个名为"test_table"的表,并且您想查找该表中名为"my_field"的字段中包含值1、2、3或4的所有行,您可以输入如下查询语句:

    SELECT * FROM test_table WHERE my_field IN (1,2,3,4);
    

    请注意,括号内的逗号分隔的数字列表应该与您要查询的值相匹配。
    如果您想要查询的值是以字符串形式存储的(如"[1,2,3,4]"),则需要先将这些值转换为整数类型,然后再进行查询。这可以通过使用内置的CAST函数来完成:

    SELECT * FROM test_table WHERE CAST(my_field AS INT) IN (1,2,3,4);
    
    2023-10-30 11:18:01
    赞同 展开评论
  • 十分耕耘,一定会有一分收获!

    楼主你好,看了你的描述,在DataWorks中使用in查询可以在DataWorks中选择需要查询的表,进入数据开发页面,比如:SELECT FROM table_name WHERE field_name IN (1,2,3,4) 或者 SELECT FROM table_name WHERE field_name IN ('1','2','3','4')
    需要留意一下将值用逗号隔开并放在括号内。

    2023-10-29 19:14:50
    赞同 展开评论

DataWorks基于MaxCompute/Hologres/EMR/CDP等大数据引擎,为数据仓库/数据湖/湖仓一体等解决方案提供统一的全链路大数据开发治理平台。

还有其他疑问?
咨询AI助理