修改密码

请输入密码
请输入密码 请输入8-64长度密码 和 email 地址不相同 至少包括数字、大写字母、小写字母、半角符号中的 3 个
请输入密码
提交

修改昵称

当前昵称:
提交
搜索
v4.0
    v4.0

    UNION 拼接去重(V4.1)

     V4.1 

    格式、参数

    UNION 可以将两个 UQL 语句的返回值首尾拼接,并对新产生的返回值按行去重。最终得到的数据流的长度小于等于原先两个流的长度的和。

    语法:

    • 格式:
      ... return <columnA1> as <alias1>, <columnA2> as <alias2>, ...
      union
      ... return <columnB1> as <alias1>, <columnB2> as <alias2>, ...
    • 参数:(见下表)
    • 受影响列:<columnA><columnB>
    名称 类型 规范 描述
    <columnA> NODE,EDGE,PATH,ATTR,ARRAY,TABLE / 第一个 UQL 语句的返回值
    <columnB> NODE,EDGE,PATH,ATTR,ARRAY,TABLE / 第二个 UQL 语句的返回值,需要和第一个 UQL 语句的返回值数量一致、别名一致、别名相同的返回值类型一致
    <alias> string 同自定义别名的命名规范 返回值的别名,两个 UQL 语句的返回值别名必须一致,顺序无需对应

    详解

    find().nodes([3,4,5]) as n1
    return n1 as a1, n1.color as a2
    union
    find().nodes([4,7]) as n1
    return n1 as a1, n1.color as a2
    

    上面 UQL 代码中的两个 UQL 语句中各有一个 NODE、ATTR 两列返回值,通过子句 UNION 进行拼接、去重:

    一般用法

    示例:查找向银行卡 CA029 转账且金额高于 1000 的银行卡,再查找向银行卡 CA022 转账且金额高于 3000 的银行卡,返回这些银行卡并去重

    n({_id == "CA029"}).le({@transfer.amount > 1000}).n({@card} as n) return n
    union
    n({_id == "CA022"}).le({@transfer.amount > 3000}).n({@card} as n) return n
    
    请完成以下信息后可下载此书
    *
    公司名称不能为空
    *
    公司邮箱必须填写
    *
    你的名字必须填写
    *
    你的电话必须填写
    *
    你的电话必须填写