ホームページ >バックエンド開発 >PHPチュートリアル >mysqlの質問があります。クエリ結果(他のフィールドでソート)内の特定のフィールドの最大値の取得についてです。
このような問題で助けを求めるたびに恥ずかしい思いをします... でも、解決策を見つけるためにマニュアルを調べる時間がないこともよくあります... もう一度連絡しなければなりません...
問題通常のクエリを作成し、フィールド a を押します。逆の順序に配置します。しかし、このクエリではフィールド b の最大値も取得したいのです
PHP には、最大キー値を直接取得する関数が用意されていないようです。多次元配列を自分で作成することは不可能ではありませんが、mysql でそれについて尋ねたいのですが、それを直接確認できますか (パフォーマンスの低下があまりないはずです。そうでない場合は、使用する方が良いでしょう) phpで計算します)
ありがとうございます
ループは必要ありませんかデータを持ち出すときは? (max 関数を使用して) ループ内で実行するだけでは十分ではないでしょうか?
データを取得するときにループが必要ではありませんか? (max 関数を使用して) ループ内で実行するだけでは十分ではないでしょうか?
まあ、MySQL が不便な場合は、PHP を使用して計算します。現在、フィールド b の値を配列に抽出し、arsort() して最初の値を取得します
$res[] = $row; //これは通常のデータ受信です
$m = max($m, $row['b']) // b を計算します方法 列の最大値
}
?
質問させてください。MySQL にクエリを実行するとき、複数の where 条件の順序はクエリの効率に影響しますか?
レコードが 100 万件あると仮定します
id>500000 と b フィールドを <>"" と入力すると、 2 つの条件の位置が入れ替わると、効率は変わりますか?
インデックスがあるかどうかが重要です