Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/62.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
Php 已解决-按A…Z,AA排序_Php_Mysql_Laravel - Fatal编程技术网

Php 已解决-按A…Z,AA排序

Php 已解决-按A…Z,AA排序,php,mysql,laravel,Php,Mysql,Laravel,我也有类似的情况。尽管有很多测试,我发现和Haleemur Ali一样,我的问题是我需要按降序排序,我没有+或- 我发现和这篇文章的结果一样,但我不想那样 在我的数据库(MariaDB)的一列中可以找到这一系列信件 我将在我的示例中找到的最后一个值递增一,我应该找到AAC+1=AAD 我使用PHP和Laravel 谢谢你的帮助 olivier允许我把我的请求写得更加优雅,如果可以的话,我会把它贴在这里 $lastL = \App\Models\MyTable::select('letter'

我也有类似的情况。尽管有很多测试,我发现和Haleemur Ali一样,我的问题是我需要按降序排序,我没有+或-

我发现和这篇文章的结果一样,但我不想那样

在我的数据库(MariaDB)的一列中可以找到这一系列信件

我将在我的示例中找到的最后一个值递增一,我应该找到AAC+1=AAD

我使用PHP和Laravel

谢谢你的帮助


olivier允许我把我的请求写得更加优雅,如果可以的话,我会把它贴在这里

$lastL = \App\Models\MyTable::select('letter')
                              ->whereNotNull('letter')
                              ->orderByRaw("length(letter) DESC, letter DESC")
                              ->first();

if(is_null($lastL->letter)){
    return 'A';
}else{
    $letter = ++$lastL->letter;
    return $letter;
}

请看SQL小提琴。

我很困惑。您引用了另一个有多个答案的问题,其中一个答案已被接受,并声明您有相同的问题。答案中给出的解决方案难道不能解决你的问题吗?如果没有,请说明如何进行。因为我不知道你的问题具体是什么。我不好,这将是这个解决方案,但在这项工作中(在一定程度上);应用程序代码中的逻辑必须相同(尽管语法不同)
SELECT UNHEX(HEX('AAC')+1)这是否回答了您的问题?非常感谢你,我刚刚从这篇文章中找到了一个不那么优雅的解决方案,如果它对其他人有帮助,我会在报告下面发布修改
$lastL = \App\Models\MyTable::select('letter')
                              ->whereNotNull('letter')
                              ->orderByRaw("length(letter) DESC, letter DESC")
                              ->first();

if(is_null($lastL->letter)){
    return 'A';
}else{
    $letter = ++$lastL->letter;
    return $letter;
}
SELECT * FROM table
ORDER BY LENGTH(value) DESC, value DESC