[解決済み] 2つの列を分割するには?
2022-01-31 17:53:03
質問事項
結合されたテーブルから2つのカラムを分割しようとしましたが、結果(relative_durationカラムの値)は常に0です。クエリーは以下の通りです。
SELECT t1.[user_1]
,t1.[user_2]
,t1.[total_duration]
,(t1.total_duration/t2.[total_events_duration]) AS relative_duration
FROM [CDRs].[dbo].[aggregate_monthly_events] AS t1 INNER JOIN [CDRs].[dbo].[user_events_monthly_stats] AS t2 ON t1.[user_1] = t2.[user_1]
テーブルt1からカラムtotal_durationをテーブルt2からカラムtotal_events_durationに分割するために、上記のクエリの何が間違っているのか、どのように修正するのか、誰か知っていますか?
ちなみに、除算を減算に置き換えて("/" を "-" )試してみましたが、その場合、列 relative_duration は 0 ではありません。
どのように解決するのですか?
おそらく、これらの列は整数の列で、計算結果が同じ型になることが理由でしょう。
例)このようにすると
SELECT 1 / 2
を実行すると、0が返されます。これは明らかに本当の答えではありません。 そこで、値を例えば10進数に変換し、代わりにそのデータ型に基づいて計算を行います。
例
SELECT CAST(1 AS DECIMAL) / 2
0.500000を与える
関連
-
[解決済み] ORA-12801: 並列クエリサーバー P004 および ORA-01555 でシグナルされたエラー: スナップショットが古すぎる。
-
[解決済み] ORA-04063: ビューにエラーがあります
-
[解決済み] PLS-00428: この SELECT 文では INTO 句が必要です。
-
[解決済み] SQL ServerでSELECTからUPDATEする方法とは?
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] 複数の列でgroup byを使用する
-
[解決済み] 最初の行への結合方法
-
[解決済み] SQL Serverでレコードを削除した後、IDシードをリセットする。
-
[解決済み] SQLite - UPSERT *not* INSERT or REPLACE
-
[解決済み] SQL select join: すべてのカラムに 'prefix.*' というプレフィックスを付けることは可能ですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 列名または提供された値の数がテーブル定義と一致しない
-
[解決済み] テーブルのFROM句の項目がない [終了しました] 。
-
[解決済み】データベースへの「ネイティブ」SQL接続を使用するとはどういう意味ですか?
-
[解決済み] テスト
-
[解決済み] WHERE x IN (5) vs WHERE x = 5 ...なぜINを使うのか?
-
[解決済み] SELECT DISTINCTを指定した場合、ORDER BY項目は必ず選択リストに表示されます。
-
[解決済み] SQLクエリで2つの列から値を引き算する
-
[解決済み] 集計を行わずに行から列へピボット移動する
-
[解決済み] SQLで複数のGROUP BYを使用する場合とは?
-
[解決済み] PLS-00428: この SELECT 文では INTO 句が必要です。