就上一个问题改正后 发现 把 as user1_alias 去掉 同时下方user1_alias改为user1就能运行 这是这么回事
时间: 2024-05-31 08:10:57 浏览: 23
这是因为在使用as关键字时,需要给该别名赋一个变量名,但是在下方使用该别名时,应该使用该别名所对应的变量名。如果你在上方已经为别名user1_alias赋值,那么在下方使用该别名时,应该使用该别名所对应的变量名user1_alias,而不是将别名改为user1,这样就会出现错误。因此,正确的做法是在上方使用as关键字时,为该别名赋值,并在下方使用该别名所对应的变量名。
相关问题
select *, cume_dist() over(partition by user_id order by money desc) as alias_percent_rank from order_for_goods;
这是一条 SQL 查询语句,用于从表 order_for_goods 中查询所有列,并使用 cume_dist() 函数计算每个 user_id 下的 money 列的累积分布百分位排名,并将结果保存在名为 alias_percent_rank 的别名列中。
具体而言,cume_dist() 函数用于计算给定值出现在排序后数据中的位置占整个数据集的比例(即累积分布百分位数),而 partition by 子句用于将数据集按照指定的列分组,order by 子句用于指定排序规则。最后,将计算结果保存在别名列中,以便在查询结果中进行引用。
select *, percent_rank() over(partition by user_id order by money desc) as alias_percent_rank from order_for_goods;
这是一条 SQL 查询语句,它使用了窗口函数 `percent_rank()` 来计算每个 `user_id` 分组中 `money` 字段的排名百分比,并将结果存储在名为 `alias_percent_rank` 的别名列中。该查询语句会返回 `order_for_goods` 表中的所有列和计算出的百分比排名列。
阅读全文