2

データベース クエリの配列から結果を取得し、結果の列の 1 つで並べ替えることは可能ですか? もしそうなら、それはどのように行われますか?

私が持っている配列の例を次に示します。

配列 ( [0] => stdClass オブジェクト ( [項目] => 0 [サイズ] => 2056515 [グループ] => SF2K [説明] => 205/65R15 SAFFIRO SF2000 94V 40K [並べ替え 4] => 94 [並べ替え 5] = > V [並べ替え6] => [価格] => 69.14 ) [1] => stdClass オブジェクト ( [アイテム] => 8518 [サイズ] => 2056515 [グループ] => FTOUR [説明] => 205/65R15 FUZION TOUR BW 94H 40K [sort4] => 94 [sort5] => H [sort6] => [価格] => 77.63 ) [2] => stdClass オブジェクト ( [アイテム] => 106633 [サイズ] => 2056515 [グループ] => SEREN [説明] => 205/65R15 BS TURANZA SER+ 94H 80K [並べ替え 4] => 94 [並べ替え 5] => H [並べ替え 6] => [価格] => 124.07 ) )

【価格】で並べ替えたいです。この例では、それらはすべてすでに番号順に並んでいることはわかっていますが、常にそうであるとは限りません。

4

3 に答える 3

1

order by本当の解決策は、クエリでステートメントを使用できるようにコードを修正することです。

つまり、php でこれを行うには、コンパレータ関数を作成します。

function myComparator($a, $b) {
    return $a->price - $b->price;
}

次に、配列で、それを呼び出しましょう$myArray

usort($myArray, 'myComparator');

詳細については、usort に関する php.netのドキュメントを参照してください。

于 2013-10-08T17:30:33.563 に答える
0

これは、SQL クエリ自体で行うことができます。クエリの末尾に次のいずれかを追加します。

昇順 (低い順):

ORDER BY price ASC

降順 (降順):

ORDER BY price DESC
于 2013-10-08T17:15:05.373 に答える
0

SQLクエリに「ORDER BY price DESC(または必要に応じてASC)」を追加するだけです

于 2013-10-08T17:15:13.430 に答える