组上的行编号不正确

集线器

感谢您帮助我学习mysql。

我正在尝试动态生成仅在组中(对于给定列)有新记录时才递增的行号。我的代码可以正常工作-它在应有的时候改变,但是值都是错误的。

我有一个fruits只有一个varchar称为的表preference它按此顺序有九(9)个记录:

Apples
Pears
Apples
Oranges
Bananas
Pears
Oranges
Apples
Bananas

这与组上递增行号t-index面临的挑战相同但是该解决方案使用了(我认为)mysql Window仅在中可用的新功能(我认为)mysql v8,但我的网络托管服务商不支持(因为CPanel目前尚未提供)支持)。

这是我的代码...

SET @row_num=1,@currFruit='';

SELECT @row_num=CASE WHEN fruit.preference=@currFruit 
                    THEN @row_num 
                    ELSE @row_num:=@row_num+1 END AS 'RowNum', 
    preference, @currFruit:=fruit.preference    
FROM fruit
ORDER BY fruit.preference;

结果显示动态生成的行号应在何时更改,但初始值是错误的,不应重置每个组,它们不应继续递增(苹果应为1、2、3),(香蕉应为1,2),(橙色1,2),(梨1,2)

这是不正确的输出....

@RowNum  preference         @currFruit:=fruit.preference
0        Apples             Apples
1        Apples             Apples
1        Apples             Apples
0        Bananas            Bananas
1        Bananas            Bananas
0        Oranges            Oranges
1        Oranges            Oranges
0        Pears              Pears
1        Pears              Pears
巴尔玛

=@row_num = CASE ...被比较@row_num的结果CASE表达,它返回1为真和0假。您应该在:=那里分配

您也会有CASE错误后果@currFruit应添加1相同时,否则应将其设置回1。

SELECT @row_num := CASE WHEN fruit.preference=@currFruit 
                    THEN @row_num + 1
                    ELSE 1 END AS 'RowNum', 
    preference, @currFruit:=fruit.preference    
FROM fruit
ORDER BY fruit.preference

演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

滚动UITableView时,UIProgressView显示在不正确的行上

来自分类Dev

导航栏按钮组不正确

来自分类Dev

卷组显示大小不正确

来自分类Dev

具有动态编号的'month'附近的语法不正确

来自分类Dev

对于新记录,自动编号值不正确

来自分类Dev

传递*时,命令行参数编号不正确

来自分类Dev

传递*时,命令行参数编号不正确

来自分类Dev

在FireFox上视频方向不正确

来自分类Dev

CALayer上的边框显示不正确

来自分类Dev

Android上的HSV转换不正确

来自分类Dev

导入的OBJ上的阴影不正确

来自分类Dev

网站解析在localhost上不正确

来自分类Dev

字体在15.10上显示不正确

来自分类Dev

matplotlib 上的 PDF 绘图不正确

来自分类Dev

Python 上的 SQL 语法不正确

来自分类Dev

iPad 上的键盘高度不正确

来自分类Dev

QTableWidget:行的大小不正确

来自分类Dev

Bootstrap div /行定位不正确

来自分类Dev

网格组标题子列的评估不正确

来自分类Dev

重新排列组(如果顺序不正确)

来自分类Dev

重新排列组(如果顺序不正确)

来自分类Dev

重新排列组(如果顺序不正确)

来自分类Dev

拖动时动态js组位置不正确

来自分类Dev

android自定义组视图布局不正确

来自分类Dev

TabBar上的图像显示不正确..在顶部显示了额外的一行-更新

来自分类Dev

不正确的尺寸不正确

来自分类Dev

范围不正确

来自分类Dev

框图不正确

来自分类Dev

图例不正确