
No.2ベストアンサー
- 回答日時:
変数はそのセッション内だけで有効なはずですが、まぁ使用したくないなら
サブクエリになるんじゃないでしょうか?
SELECT ROUND(num,(SELECT IF(MAX(LENGTH(num) - LENGTH(floor(num)))>0,MAX(LENGTH(num) - LENGTH(floor(num)))-1,0) FROM hoge)) as num FROM hoge
こんにちは。
私のSQLはダメダメでしたね・・・
いらぬ手間をとらせてしまいました。
当初の予想としては、汎用の関数が用意されていると思っていたのですが、
たとえ、欲しい関数がなくとも、知ってる関数を色々組み合わせて、1個の巧妙なSQL文が作れるのですね!
No.1
- 回答日時:
一回桁数を変数にとってみるとか・・・
double型のnumというフィールドをつかって処理すると
SELECT @KETA:=MAX(LENGTH(num) - LENGTH(floor(num))) FROM `hoge`;
SELECT ROUND(num,IF(@KETA>0,@KETA-1,0)) as num FROM hoge;
見た目でもわかるとおり、あまりお勧めできないので受け取った側のミドルウェアで
処理するのが妥当だと思います
こんばんは!
ご返信まことにありがとうございますm(__)m
SQLで変数なんて使えるのですね!
しかし、この変数はいつまで保持されるのだろうという恐怖があり、試してません^^;
代わりに2行目の@KETAという部分を、
MAX(LENGTH(num) - LENGTH(floor(num)))に置き換えて、
SELECT ROUND(num,IF(MAX(LENGTH(num) - LENGTH(floor(num)))>0,MAX(LENGTH(num) - LENGTH(floor(num)))-1,0)) as num FROM hoge
という風にして試してみました。
私的にはこれで行けると思ったのですが、結果はnumの値(?)が1行返ってきただけでした・・・
やはり、結果セットを受け取った後のスクリプトの中で編集する方が無難ぽいですね。
個人的には、より高速な方をチョイスしようと思っていたところですが、どちらにせよ一瞬で終わってしまう処理だったり^^
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C# 浮動小数の数値文字列化 1 2022/04/18 15:15
- その他(データベース) Accessフォームにて指定のフィールドの平均値を小数点第一位で表示できない 2 2022/08/30 17:19
- 数学 以下の問題が分かりません。 8ビット浮動小数点数が、最上位ビットから順に符号1ビット、指数部3ビット 4 2023/07/22 16:06
- Excel(エクセル) Excelのtextboxへの入力で小数点以下に0が続く場合でも正しく表示したい 3 2022/04/11 13:53
- Excel(エクセル) エクセルのセルの書式設定・ユーザー定義の条件設定について 1 2022/08/17 21:56
- 統計学 教えてください! あるくじ引きには5枚に1枚の割合でアタリが入っていると宣伝しているが、実際には20 7 2023/05/29 09:10
- 高校 高校化学、気体、温度の有効数字 3 2023/04/02 11:39
- 数学 小数点の計算についてです。 答えは与えられた数字の中で最も少ない桁に四捨五入で合わせるのですが、ひと 2 2023/04/04 15:19
- Visual Basic(VBA) VBAのifで 4 2023/05/16 14:21
- 教育学 エクセルで小数点以下を四捨五入について教えてください。 2 2023/04/05 17:33
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
count関数の値をwhere句で使用...
-
結合したテーブルに名前をつけ...
-
SQLローダーCSV取込で、囲み文...
-
Oracleで「文字が無効です」の...
-
テーブルの最後(最新)のレコー...
-
引数によってwhere句を切り替え...
-
ファイルの漢数字の順番につい...
-
文字型の順番がうまく並ばない。
-
単一グループのグループ関数で...
-
SELECT FOR UPDATE で該当レコ...
-
PL/SQLで…SQLの実行結果を変数...
-
DATAPUMPとFASTUNLOADでのデー...
-
where句中のtrim関数について
-
SQL Serverでデータの表示順を...
-
accessでDISTINCT 句と矛盾
-
SQL*Loader Append
-
データ
-
データベースを用いて掲示板を...
-
複数のデータテーブルのデータ...
-
入力データの半角スペースと全...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
count関数の値をwhere句で使用...
-
OUTER JOIN とgroup by
-
【バグ?】ORDER BY DESCでempty
-
小数点以下桁数が最大の値に小...
-
市区町村別の件数をカウントす...
-
同じテーブルでのUNION
-
結合したテーブルに名前をつけ...
-
条件について
-
重複データを除外する際に条件...
-
金額の計算方法
-
複雑なSELECT
-
複雑な並び替え処理
-
ストアドファンクションの再帰...
-
【初歩】項目別の合計件数をSQL...
-
NULLを 0 として計算する方法は?
-
以下のテーブルa,bから目的とす...
-
SQL 自己結合で件数の条件指定
-
重複レコードの抽出
-
SQL カラムの値ごとの集計
-
SQLローダーCSV取込で、囲み文...
おすすめ情報