こんにちは。
mysqlの集計関数を使っていて、気になることが出てきました。
mysql
1selece item, max(amount_invested) 2 from hoge; 3→ 4+--------------+----------------------+ 5| item | max(amount_invested) | 6+--------------+----------------------+ 7| 食費 | 7560 | 8+--------------+----------------------+
これでは食費になります。
サブクエリでmaxを求めます。
mysql
1select item, max(amount_invested) 2 from hoge 3 where amount_invested = (select max(amount_invessted) from hoge); 4 5+-----------------+-----------------+ 6| item | amount_invested | 7+-----------------+-----------------+ 8| 水道光熱費 | 7560 | 9+-----------------+-----------------+
水道光熱費になります。
前者のsqlは「1行の結果」と「複数行の結果」が混在しているからだと思っています。
この考えは合っておりますでしょうか?m(_ _)m
普通はエラーになると思うのですが・・・
回答4件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/25 04:55