- ベストアンサー
SELECT文で時間軸を行で取得する
いつもお世話になっております。 掲題の件で質問なのですが、ループを使わず SELECT文ひとつで(Loopや一時テーブルなしで)時間を取得する関数を使用し00~24という値を一行ずつ取得したいのですがどうしてもわかりませんでした。 お知恵を拝借したく思います。 もしこれが可能であれば、年や週もレコードでずらっと 表示できるかと思いますのでとても気になっているのです。 環境はSQLServer2000です。 文章力がなく説明不足で申し訳ありませんが ご存知の方がいらっしゃいましたら、 どうぞご教授よろしくお願いいたします。 失礼いたします。
- Ha88888
- お礼率91% (31/34)
- その他(データベース)
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
おそらく、カレンダテーブルを用意する方が手っ取り早く効率的なので、そういう機能は存在しないのではないかと。
関連するQ&A
- 複数レコードをUPDATE文一文で処理する方法
お世話になります。 掲題の件でご質問させていただきます。 レコードセットに格納した複数レコードデータをテキストボックスに格納し、 そのテキストボックスを変更した部分だけを一度に UPDATE文で変更する方法は存在するのでしょうか。 Loopさせて一行ずつ処理することはもちろんできるのですが どうしても一文で処理したいのです。 ASP+SQLServer2000の組み合わせで、SQL処理はすべて ストアド内でやっています。 説明がへたでわかりずらいとは思いますが、 どうぞよろしくお願い申し上げます。 それでは、失礼いたします。
- ベストアンサー
- その他(データベース)
- SQLServer2000のselect文で
SQLServer2000のselect文で select count(*) from Table を実行するのに30秒以上かかってしまいます。 データ数は100万件もありません。 全件数を取得するのになぜこんなにかかってしまうのでしょうか? 主キーはVarcharの50バイトです。 こんな単純な文でこれだけかかってしまうのは、 DBの設定が悪いのでしょうか? それともPCの性能が悪いのでしょうか?
- ベストアンサー
- SQL Server
- SELECTの結果で同一行を複数回出力する
レコードが1行しか存在しないテーブルがあります。 このテーブルのレコードをSELECTして、同一行を複数行取得したいと思っています。 1回のリクエストで、このような結果を取得する方法はあるでしょうか? DBはORACLE10gです。 よろしくお願いします。
- 締切済み
- Oracle
- 一つのSQL文で取得したい
こんにちは。 テーブルAに以下のようなデータがあるとします。 ID |名称 |項目 -------------- 01 |ああ | 02 |いい | 03 |うう |01,02 04 |ええ |01 SELECT文で取得したいのは、フィールド「項目」の値を、他のレコードの名称で置き換えた列です。 つまり、 ID |名称 |項目 |項目名称 ------------------ 01 |ああ | | 02 |いい | | 03 |うう |01,02 |ああ,いい 03 |ええ |01 |ああ という結果が欲しいということです。 「項目」の値はカンマで区切られています。 これを一つのSQLで取得したいと思っています(テーブルの結合、サブクエリーはOK)が、方法がわかりません。 どなたかどうぞご教授ください。 よろしくお願い致します。
- ベストアンサー
- SQL Server
- ストアドのselect文で別テーブルのカウントを取得するには
こんばんは。 以下のようなことをするのにどう記述していいのか わかりません。 入力パラメータ test1,test2に一致するテーブル1のレコードの 項目1と項目2の値と test1,test2に一致するテーブル2のレコードの カウントを 返したいと考えていますがどう記述したら テーブル2のカウントを返せるのかわかりません。 以下、考え中の内容を記述したものです。 テーブルTBL_AとテーブルTBL_Bがある。 TBL_Aの項目はFLD_1,FLD_2,FLD_3 TBL_Bの項目はFLD_1,FLD_2,FLD_3,FLD_4 TBL_AとTBL_Bには同一のフィールドFLD_1,FLD_2があり、 select FLD_1,FLD_2,FLD_3 FROM TBL_A WHERE FLD_1 = test1 AND FLD_2 = test2(select文1) 上記のSQLでTBL_AのFLD_1,FLD_2を取得する ここに、 select count(*) FROM TBL_B WHERE FLD_1 = test1 AND FLD_2 = test2(select文2) このselect文2で取得した値を select文1に接続して値を戻したいのですが やり方がわかりません。 戻したい値はTBL_AのFLD_1,FLD_2,FLD_3とTBL_Bのカウントです。 お分かりになる方教えてください。よろしくお願いします。 なおoracleは9iを使っています。
- ベストアンサー
- Oracle
- Select文で2つのフィールドを加算した結果を取得したい
Select文で2つのフィールドを加算した結果を取得したいと思います。しかし2つのフィールドのうち1つがNullの値だと残りのフィールドに値が入っていても空白(NULL?)で返ります。 [例]********************************************** フィールドA:Null フィールドB:300 SELECT フィールドA+フィールドB FROM テーブルA <Selectされた結果> 空白(何も表示されない。Null?) [例]********************************************** どのようにすれば、Nullでない値だけ取得できるでしょうか。
- ベストアンサー
- SQL Server
- selectの内容によって、登録するカラムを変えたい
selectの内容によって、登録するカラムを変えたい selectであるテーブルからある値Aをとってきます。 値Aが1の時は別テーブルの金額1に登録、2の時は金額2に登録、3の時は金額3に登録 という処理を行いたいです。 同一レコードに対して複数の金額がある事があります。 テーブル1(取得テーブル) ------------------ キー 値A 金額 1 1 500 1 3 300 2 3 200 ------------------ テーブル2(登録テーブル) ------------------ キー 金額1 金額2 金額3 1 500 0 300 2 0 0 200 ------------------ いま、 insert into テーブル2 SELECT 項目 from テーブル1 というように1つのSQLで、登録、削除をしようとしていますが 可能でしょうか?。方法がよく分かりません。
- ベストアンサー
- Oracle
- SQLServerでのSELECT文をORACLE9iで使用したいのですが・・・
SQLServer2000で使用していたSELECT文をORACLE仕様にする場合どのように修正すればよいですか? 試行錯誤やっているのですが、思うようにできません。 関数a(関数b())といった作法は無理なのでしょうか? ※関数a(関数b())のような構成だと [ORA-00938: 関数の引数が不足しています] 等が発生する (SQLServerでのSELECT文) SELECT F列A + SPACE(11-LEN(F列A)) + ISNULL(F列B,SPACE(0)) AS F列C, F列A ,F列B FROM T表 どなたかご教授おねがいします
- 締切済み
- その他(データベース)
- テーブルで一番古いレコードだけをSELECTしたい
テーブルで一番古いレコードだけをSELECTしたいのですが、どうすれば良いでしょうか? ■背景 ・テーブルからデータを取得しようと思ったら、「id」及び「autoincrement」に該当するカラムがありませんでした ・日付に該当するカラムもありません ・「phpMyAdmin」で確認すると、いつも同じ並び順で表示されるので、格納したレコード順で表示されているのではないかと思いました ■質問 ・この時、そのテーブルで一番古いレコードだけをSELECTしたいのですが、どうすれば良いでしょうか? ・where?
- ベストアンサー
- MySQL
お礼
回答いただきましてありがとうございました。 やはりそうですか。。。 どうもありがとうございました。