Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/86.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如何基于排序顺序百分位数进行bin/评分_Mysql_Sql - Fatal编程技术网

Mysql 如何基于排序顺序百分位数进行bin/评分

Mysql 如何基于排序顺序百分位数进行bin/评分,mysql,sql,Mysql,Sql,我试图根据多个不同的标准给不同的城市一个从1到5的“分数”,最终把分数加起来,决定哪个城市最好 “国际烟酒”表包含了居民在烟酒上消费的收入百分比值。我想把结果分成5个分类箱,其中1是最低百分比支出,5是最高百分比支出 我添加了一个“排序顺序”列 然后我想添加“score”列,但我不知道如何正确添加。我已经尝试了我能想到的所有变化: ALTER TABLE international_tobacco_alcohol ADD COLUMN score INT DEFAULT NULL; UPDATE

我试图根据多个不同的标准给不同的城市一个从1到5的“分数”,最终把分数加起来,决定哪个城市最好

“国际烟酒”表包含了居民在烟酒上消费的收入百分比值。我想把结果分成5个分类箱,其中1是最低百分比支出,5是最高百分比支出

我添加了一个“排序顺序”列

然后我想添加“score”列,但我不知道如何正确添加。我已经尝试了我能想到的所有变化:

ALTER TABLE international_tobacco_alcohol ADD COLUMN score INT DEFAULT NULL;
UPDATE international_tobacco_alcohol 
SET score = CASE
        WHEN sort_order < .2*MAX(sort_order) THEN 1
        WHEN sort_order=> .2*MAX(sort_order)and <.4*MAX(sort_order) THEN 2
        WHEN sort_order=> .4*MAX(sort_order)and <.6*MAX(sort_order) THEN 3
        WHEN sort_order=> .6*MAX(sort_order)and <.8*MAX(sort_order) THEN 4
        WHEN sort_order=> .8*MAX(sort_order)and =<MAX(sort_order) THEN 5
        END;
ALTER TABLE international\u tobacco\u alcohold ADD COLUMN score INT DEFAULT NULL;
更新国际烟草和酒精
设置分数=案例
当排序顺序<.2*最大值(排序顺序)时,则为1

当排序顺序=>.2*MAX(排序顺序)和.4*MAX(排序顺序)和.6*MAX(排序顺序)和.8*MAX(排序顺序)和=时,您不需要[在酒精和烟草上花费的钱]的[排序顺序]。 另一种方法是使用RANK()函数或稠密的_-RANK()

我不知道专栏,但你可以这样做:

SELECT [col_1], [col_2]
    ,RANK() OVER 
    (PARTITION BY [Location] ORDER BY [spent_on_alcohol_and_tobacco] DESC) AS Rank
FROM [international_tobacco_alcohol]

希望这有帮助

MySQL中没有实现窗口函数。
SELECT [col_1], [col_2]
    ,RANK() OVER 
    (PARTITION BY [Location] ORDER BY [spent_on_alcohol_and_tobacco] DESC) AS Rank
FROM [international_tobacco_alcohol]