SQL文で商品別人員別の作成時間(平均値)を出力
- SQL文で商品別、人員別の作成時間(平均値)を出力する方法について困っています。
- 開発環境はDB:Oracle11gR2、プラットフォーム:VisualStudio2010です。
- 商品IDと人員IDごとの作成時間の平均値を求めたいのですが、1文のSQL文で出力する方法がわかりません。
- ベストアンサー
SQL文で商品別人員別の作成時間(平均値)を出力
SQL文で商品別、人員別 の作成時間(平均値)を出力したいのですが、出来ずに困っています。 *開発環境* DB:Oracle11gR2 プラットフォーム:VisualStudio2010 *データ 商品ID_人員ID_作成開始日時_作成終了日時 1___1___16/2/18 9:00_16/2/18 9:10 1___1___16/2/18 9:10_16/2/18 9:15 1___2___16/2/18 9:00_16/2/18 9:10 2___1___16/2/18 9:00_16/2/18 9:10 2___2___16/2/18 9:10_16/2/18 9:20 2___2___16/2/18 9:20_16/2/18 9:30 *出力結果 商品ID 人員ID 平均値 1___1___7.5 1___2___10 2___1___10 2___2___10 と言った具合な結果が出力したいです。 1文のSQL文で、group by や 副問い合わせの合わせ技で出力できそうかとは思うのですが。。。 どうぞ、宜しくお願い致します。
- yasu_999
- お礼率100% (3/3)
- Oracle
- 回答数2
- ありがとう数4
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
検証も、特に調べてもいないので間違っているかもしれませんが、 SELECT 商品ID, 人員ID, AVG(span) FROM (SELECT 商品ID, 人員ID, 作成終了日時 - 作成開始日時 AS span FROM テーブル) A1 GROUP BY A1.商品ID, 人員ID みたいな感じかと。
その他の回答 (1)
- urunpa
- ベストアンサー率0% (0/3)
spanは「分」で求めたい様ですので、開始日時と終了日時の差の値(=日付差)に「24×60」を掛ければ良いかと思います。
お礼
ありがとうございます。 参考にさせて頂きます。
関連するQ&A
- 集計のSQL文について
SQLでの集計方法について質問です。 Oracle8iを使用しています。 あるテーブルに以下のようなレコードがあります。 ID 回数 値 1 1 100 1 2 200 1 3 300 2 1 150 2 2 550 .... この登録されている値をそのIDごとに、その回数まで回数ごとにサマリーした結果を出力したいのですが どうすればよいでしょうか。 ID 回数 値 1 1 100 ・・・(100) 1 2 300 ・・・(100+200) 1 3 600 ・・・(100+200+300) 2 1 150 ・・・(150) 2 2 700 ・・・(150+550) 宜しくお願いします
- ベストアンサー
- Oracle
- SQL文の作成について
前の質問が解決してないのに、すいません。 SQL文を作成して、関数に投げると配列で 実行結果が返ってくるらしいのですが。 SQL文作成時に変数をWHERE節に組み込む 記述の仕方が自信ないです。以下のような感じです。 Dim srtSql As String Dim Key_Id As String Call Key_Get(Key_Id) ’キーを取得 strSql = strSql & ”Select Tb*” strSql = srtSql & ” From Tb ” strSql = strSql & ”Where ” srtSql = strSql & ”Tb_Key_Id = ’” strSql = strSql & Key_id & ”’” のように(Accessだとこんな感じ【キーはSring】)ダブルクォーテーションの外に書いてよいのでしょうか?
- ベストアンサー
- SQL Server
- SQL文がわかりません。
SQL文がわからなく困っております。 下記のデータ*01を*02のデータのようにSELECTするためには、 どのようなSQL文を書けばよいのかお教えいただけますでしょうか? DBはoracle11gです。 ※01 ID 所属部署 _____________________________ 1 a 1 b 2 a 2 b 2 c 3 a 3 b 3 c 3 d ____________________________ ↓↓↓↓↓↓↓↓↓↓↓↓↓↓ ※02 ID 所属部署 所属部署2 所属部署3 所属部署4 _________________________________________ 1 a b 2 a b c 3 a b c d
- ベストアンサー
- Oracle
- oracle8.1iでSQL文処理時間について
Oracle8.1iでの質問です。 クライアントからサーバへなんらかのSQL文を 投げた場合、サーバで処理をし、クライアントに 結果を返すと思いますが。 サーバ側でのSQL文の処理開始時刻と処理終了時刻を知りたいのですが、どのような システムテーブルを見ればよいのかご存知の方 教えてください。SQL文まで、分かれば助かります。
- ベストアンサー
- Oracle
- 期間の重複を調べるSQL文について・・・
EVENT --+------------+------------+ id | start_date | end_date --+------------+------------+ 0 | 2007-06-01 | 2007-06-03 | --+------------+------------+ 1 | 2007-06-04 | 2007-04-06 | --+------------+------------+ 2 | 2007-06-02 | 2007-06-05 | ↑こんな感じでイベントを管理するテーブルがあります。 イベントの開催期間の重複を出力するSQL文を書きたいのですが、 何かいい案はありませんでしょうか??? 結果的には重複し合っているレコードのidを出力させたいです。 よろしくお願いします。
- ベストアンサー
- PostgreSQL
- JOINを使ったSQL文を作成しようとしています。
JOINを使ったSQL文を作成しようとしています。 以下の様な3つのテーブルがある場合のSQL文を教えて下さい ※勉強の為、適当なテーブルを作成しましたが、やりたい事は JOINの中に更にJOINさせたSQL文を作成したいと思ってます 表A USER_ID(プライマリキー) NAME 表B USER_ID(プライマリキー) ※表A.USER_IDと紐着く BUMON(プライマリキー) TERM(プライマリキー) 表C BUMON(プライマリキー) ※表B.BUMONと紐着く TERM(プライマリキー) ※表B.TERMと紐着く MEMBER 【取得したい項目】 表A.USER_ID 【抽出条件】 表CのMEMBERの値が'10','20'以外(である表AのNAMEを取得)
- ベストアンサー
- Oracle
- SQL文のダブルクォーテーションを取りたい。
SQL2008を使用しております。 2つのDBを統合したいのですがユニークIDがかぶっているデータが あるのでIDを変更したいのですが フリーソフトでINSERT文をTab区切りで出力してIDを変更してINSERT文を 作成するといらない箇所に「"」ダブルクォーテーションが入ってしまします。 もちろんその状態ではクエリ実行できないので困っています。 順序はINSERT文をTab区切りで出力→出力されたTab区切りのcsvのIDを変更→テキストで保存(csvでも保存)→拡張子をsqlに変更するといらない箇所に「"」ダブルクォーテーションが入ってしまします。 変更保存の問題でしょうか? どうしたら「"」ダブルクォーテーションが入らない方法はありませんか? 以上、わかるかた教えてください。 よろしくお願いします。
- ベストアンサー
- SQL Server
- batファイルからsql文実行
クライアントOS:WIN2000 Oracle:9i(サーバ(UNIX)上にあります) 現在、クライアントからbatを起動し、SQL文を投げ、結果を取得したいと思っております。 (SQL文は単純にTBLをカウントしているだけです) ・batの中身 sqlplus %UID%/%PASS%@%SID% @test.sql > output 結果は取得出来るのですが、余分な情報も結果に出力されてしまいます。結果のみを出力させるにはどうすればよろしいでしょうか? ・余分な情報 Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production With the Partitioning, OLAP and Oracle Data Mining options JServer Release 9.2.0.4.0 - Production に接続されました。
- ベストアンサー
- Oracle
- アプリケーションからのSQLトレース出力について
java(servlet)で作成したアプリケーションのSQLトレースを取得したいのですが、トレースファイルに出力されません。 ご教授お願いします。 【環境】 ・oracle 9i(10gでも確認しましたが同様の結果でした) ・java(servlet)の実行環境はwindows server 2003 【設定、操作方法】 ●SQLPLUSより 1.ALTER SESSION SET sql_trace = true; 2.timed_statistics は true になっている事を確認 ●ブラウザより 3.アプリケーションを動かす(内部でSQLが発行される操作を行う) ●コマンドプロンプトより 4.tkprof より出力内容を確認 出力結果にアプリケーションで発行しているSQLの解析情報が全く入っていません。 上記の操作に問題があるのでしょうか?それとも何か他に設定が必要なのでしょうか? よろしくお願いします。
- ベストアンサー
- Oracle
お礼
ありがとうございます。 SELECT 商品ID, 人員ID, AVG(作成終了日時 - 作成開始日時) AS span FROM テーブル GROUP BY 商品ID, 人員ID で、出力できました!