mysql の結果を 2 つの列でソートしますが、「ホール」列が含まれます
P粉118698740
P粉118698740 2023-09-11 12:14:50
0
1
374

私の最初の状況は次のとおりです:

リーリー

次のスキーマを使用してこのテーブルを生成できます:

リーリー

目標は、NULL forcedRank 列を含まないすべての行を、この forcedRank 列に記載されている正確な位置に配置することです。予想されるレンダリングは次のとおりです:

リーリー

ご覧のとおり、NULL でない場合、各行は forcedRank 列によってソートされた位置になります。 NULL 行が非 NULL 行によって占められていない位置にある legacyRank 列によってソートされたままであるが、強制された行は移動されない場合。

このシーケンスに従って、ORDER BYCASE WHEN 構文を次のように使用してみました。 リーリー

しかし、結果は私の期待を完全に満たすものではありませんでした:

リーリー

それでは、

legacyRank 列を移動せずに、forcedrank 行を超えて並べるにはどうすればよいでしょうか?

P粉118698740
P粉118698740

全員に返信(1)
P粉141925181

NULL は、IS を使用する必要があるか、あなたの場合 IS NOT

のように比較できません。 リーリー
######ヌル###### ######ヌル###### 63 ######ヌル###### ######ヌル###### ###7### ######ヌル###### 最初の答えでは正しい答えが得られないからです。 順序を維持し、数値を従来のランキングよりも強制的に小さくすると、次の結果が得られます リーリー レガシーランク強制ランキング0 ######ヌル######
レガシーランク 強制ランキング
0 1
4 1
2
5
2 6
######バイオリン###### 元の数値に小数点を追加して、新しい強制ランキングよりも大きくなるように順序を変更しました。

4 1

1

######ヌル######

62 ######ヌル###### 5 ######ヌル###### ###7### ######ヌル######
3
2 6
######バイオリン######
いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!