nora1962 の回答履歴

全1179件中1161~1179件表示
  • 正規化

    例えばアパレルメーカの在庫を管理するためにデータベースを設計するとして、次のように3つのテーブルを用意するとします。これは正しいでしょうか。漠然としててすみません。 <テーブル1> 品番 ブランド アイテム 単価 <テーブル2> 品番 サイズ カラー <テーブル3> 在庫場所 品番 サイズ カラー 数量 致命的なところがないでしょうか? よろしくお願いします。

    • ベストアンサー
    • noname#64345
    • MySQL
    • 回答数3
  • 異なるキーで取得したデータの合成

    SQLに関して質問です。 以下のようなテーブルA、Bがあった場合、 【テーブルA】  カラム1  カラム2  ------------------------  AAA   CCC  BBB   DDD 【テーブルB】  カラム3  カラム4  ------------------------  AAA   1  BBB   2  CCC   3  DDD   4 次のような結果を得るにはどのようなSQL文を記述すれば良いでしょうか? 【求める結果】  カラム1  カラム2 カラム4(1) カラム4(2)  ---------------------------------------------------  AAA   CCC    1      3  BBB   DDD    2      4 非常に初歩的な質問かもしれませんが宜しくお願いいたします。

  • 別インスタンスからインポート(Transaction-SQL)

    google 等で、必要な情報が見つからなかったため、ここで質問してみます。 既出だったら申し訳ないのですが、下記の T-SQL スクリプトを作成しようとしています。 どうにも取っ掛かりが無いので、下記の簡易なスクリプトの例があったらご教授ください。 なお、自動化が目的なので、Transaction-SQL となっています。 DTSパッケージ等でできるのはわかっています。 DTSパッケージでの操作を、トレース等でトレースログをとろうにも、 別インスタンス指定の部分のみがログに残らないので、途方にくれています。 やりたいこと(Transaction-SQL) (1) 同じサーバー上で稼動している別インスタンス(例えば [DB01])から、インポートする。 (2) テーブル名、テーブル定義は同じ(当然キーなどの優先順位なども同じ) (3) インポート指定時にクエリ等で、データを指定する。 (このクエリについては作成できています。つまり同じインスタンス内では動作可能となっている)

  • 最小値をUPDATE

    UPDATE文で効率のよい方法を模索しています。皆様方のお知恵をお貸しいただければと思い投稿してみました。 以下のようなテーブルが存在していると仮定します。 TB_1 id|custom|tanto1|tanto2|syohin|date 1 |1 | 10| 10| 999|2007/01/01 2 |1 | 10| 10| 999|2007/02/01 3 |1 | 20| 20| 999|2007/03/01 4 |1 | 20| 20| 999|2007/04/01 5 |1 | 10| 10| 777|2007/04/01 ※idはプライマリキーです。 ※date以外はすべて数値となっております。 custom,syohinが同じものでtanto1に複数の値が存在する場合、一番古いdate(もし同dateが存在するならidの小さい方)のtanto1をtanto2に書き換えたい。 ※上記の例ではid 3と4をid 1のtanto1をtanto2へ更新します。 ↓ 更新結果 id|custom|tanto1|tanto2|syohin|date 1 |1 | 10| 10| 999|2007/01/01 2 |1 | 10| 10| 999|2007/02/01 3 |1 | 20| 10| 999|2007/03/01 4 |1 | 20| 10| 999|2007/04/01 5 |1 | 10| 10| 777|2007/05/01 UPDATEでEXISTS句を使ったり、サブクエリで試してみましたが思った結果が得られなかったので、 とりあえずストアドプロシージャでカーソルを使って更新する処理をしたのですが、(処理をここで説明するのは省略させていただきます) UPDATE文を駆使して、できないものでしょうか。 SQL2000およびSQL2005のどちらでも動作することが条件となります。 誠に恐れ入りますがご教授願います。

  • 特定条件の下でグループ化

    お世話になります。 SQL文でご質問があります。 たとえば以下のようなデータがあったとします。 項目1, 項目2, 項目3, 項目4 -------------------------------- 1  ,  A  ,  0  ,  10 2  ,  A  ,  0  ,  20 3  ,  B  ,  1  ,  30 4  ,  B  ,  0  ,  40 5  ,  C  ,  0  ,  50 6  ,  C  ,  0  ,  60 7  ,  D  ,  1  ,  70 8  ,  D  ,  1  ,  80 9  ,  E  ,  0  ,  90 10  ,  E  ,  1  ,  100 ここから[項目3] = 1 のレコードが含まれているもの に限り[項目2]でグループ化し、 [項目4]の合計値を求めて 項目2   ,   項目4 --------------- B  ,  70 D  ,  150 E  ,  190 と取得したいのですが、1回のSQL文で取得できるのでしょうか? ご存知のかたがいらっしゃいましたら、どうかご教授ください。m(__)m

  • あるIDごとの最高値のレコード抽出について

    下記のようなテーブルがあるとします。 それぞれの人の最高得点であるレコードを抽出したいのですが可能でしょうか。 テーブル:result no id point date -------------------- 1 A 60 ... 2 A 70 3 B 50 4 B 90 期待出力 no id point date ------------------- 2 A 70 ... 4 B 90 自分でも色々考えたつもりですが、例えば select max(point) from result group by id; とすると 70,90 という値は抽出されますが、該当レコードの全カラムを出力させたいです。 もし同じidで同じpointのレコードがあった場合は、dateの新しいほうを優先したいです。 id,point,dateがまったく同じレコードは存在しないと仮定します。 この他にもdistinct等も考えましたが、指定したカラムが重複した場合どのレコードが選択されるかは 不定のようですので使えそうにありません。 そもそもSQLだけでこのような出力が可能かどうかもわかりません…。 テーブルの設計が悪いというのもあるのでしょうか。 どなたかご助言くだされば幸いです。

  • 1週間後の日付を求めたい

    テーブルにchar(6)でyymmdd形式の日付を格納する領域を作成しております。この格納された日付から1週間以上過ぎたもののみ抽出したいのですが、sqlの構文を上手く作成できず大変こまっております。 有識者様大変お手数ですがご教授を頂けないでしょうか?

  • リンクサーバでSYBASEをリンクしたい

    SYBASEからSQLサーバにデータを転送したいのですが、 リンクサーバーが設定できません。 環境は WindowsXP SQLServer2000 です。 Microsoft OLEDB Provider for ODBC を利用すれば できるような解説も見つけたんですが、上記ドライバーがインストールされません。 Microsoft OLEDB Provider for ODBC をダウンロードできないか探したのですが見つかりませんでした。 かわりに、MDACドライバをインストールしてみようともしましたが、 こんどは「このバージョンのWindousと互換性がない」エラーが出ました。 何を調べて、どうすればいいのかもわからなくて困っています。 どなたかご存知であれば、教えて下さい!!! よろしくお願いします。

  • データベースに接続できません。ProgID レジストリ...

    テキストボックスからデータベースに書き込むWebサイトを起動したら、「初期化文字列の形式が使用に適合しません。index 0 で始まっています。」というエラーがでました。これを調べてみると下記のMSDNのサイトがあるのですが見れなくて非常に困ってます。  どうやらProgIDがレジストリに定義されていないためできないそうです。このやりかた、もしくはサイトに行けた方、方法を教えていただけないでしょうか? http://forums.microsoft.com/msdn-ja/ShowPost.aspx?PostID=2616976&SiteID=7

  • 最初の値から次の行の値までを同一で取るSQLについて

    最初の値から次の行の値まで を同一に取れるようにしたいと思っています。 LAGやDECODEを用いてやってみましたが うまく行きません。 ID CODE ------------ 1  100 2   3   4   5  200 6   7  300 8  400 9   10  期待する値 ID CODE ------------ 1  100 2  100  3  100 4  100 5  200 6  200 7  300 8  400 9  400 10  400 どなたか宜しく御願いします。

  • 最初の値から次の行の値までを同一で取るSQLについて

    最初の値から次の行の値まで を同一に取れるようにしたいと思っています。 LAGやDECODEを用いてやってみましたが うまく行きません。 ID CODE ------------ 1  100 2   3   4   5  200 6   7  300 8  400 9   10  期待する値 ID CODE ------------ 1  100 2  100  3  100 4  100 5  200 6  200 7  300 8  400 9  400 10  400 どなたか宜しく御願いします。

  • データ検索でこんなケース

    テーブルに以下のような内容が格納されているとします。 グループ1  グループ2 ----------+------------+---- 購買係     山田太郎 掃除当番    山田太郎 営業課     購買係 営業課      事務係 第一営業部   営業課 ----------+-------------+---- 上記のようなデータの持ち方で例えば グループ1「山田太郎」で検索を行なった際に それに紐付くデータを抽出したいと考えております。 出力結果 --------- 購買係 掃除当番 営業課 第一営業部 上記をSQLを使って出力する方法をどうかお教えください。

  • アクセスのテ-ブルについて

    アクセスのテ-ブルは最大 なんMBまで 取り込み可能ですか 先日 TXTファイルをインポ-トしていたら デ-タ量が多い様な  メッセジがでました またTXTデ-タを圧縮する方法がありますか

  • LIKEのスペースの取扱い

    今Acsessに 2, 3, 16, 17, 25, ・・・ と言った風に 数字+コンマ+スペース・・・ と言ったランダムな数字の列が格納されています. この文字列に任意の数字が含まれていた場合 レコードを抽出した意のですが、 LIKE '%数字,%'としたところ 数字が1の時21や31も抽出されてしまい困っています. 例のような文字列の中にある数字を 桁に依存しないように抽出する方法はないでしょうか? お力添えをお願いいたします.

  • H2 DataBaseご存知の方教えてください!!

    H2でMySQLのShowコマンドに該当する操作をご存知の方がいらしたら教えてください! 現在、H2 ConsoleからH2エンジンにアクセスしておりますがテーブル情報を確認することができず困っております。 H2のHPでSQLGrammarを閲覧しますが、量が多く、また英語ということもあってShow Tablesに該当する操作が見つからず。 仕事で必要な作業なのでどなたか、どうか力を貸してください。 よろしくお願いいたします。

  • エクセルで数字とアルファベットと文字列を分割する方法

    こんばんは。 エクセルのセルで数字とアルファベットの文字列を分割する方法を教えて下さい。 100AB3.4C → "100" "AB" "3.4" "C" 間にスペースやカンマなど無く、文字数は異なります。 数字は小数点がある場合と無い場合があります。(上記の "100" "3.4" のように) 同じ列に同様のデータが数件~数千件あり、まとめて分割したいです。 関数もしくはマクロ(VBA)で可能であれば教えて下さい。 最近マクロの勉強を初めたのですが、方法が思いつきません。。。 宜しくお願いします。

  • SQLのIN句について

    DB:Oracle9i SQLのIN句のカッコ内は、何個まで書けるなど、制限はあるのでしょうか? PRO_KEY = IN (no1, no2, no3・・・)など、カッコ内が可変で、数百個、もしくは数千個ある場合、IN句を使用しデータを一度に取得するのではなく、PRO_KEY = no1のSELECT処理を発行、PRO_KEY = no2のSELECT処理を発行・・・し、ARRAYに検索結果を1つずつ詰めていく方が良いのでしょうか? 初心者で恐縮ですが、どなたかご教授ください。

    • ベストアンサー
    • yumi_
    • Oracle
    • 回答数3
  • SQL Serverへの日付のINSERT文

    VB6 SP6でSQLServerのdatetimeに日付をinsertしたいのですが、 VBのDate型の DATE = #2008/02/06# '日付 TIME = #19:00:00# '時間 これをどのようにすれば書き込めるのでしょうか。 環境 WindowsXP Pro SP2 Visual BASIC 6.0 SP6 SQL Server 2005 Express Edition

  • エクセルで数字とアルファベットと文字列を分割する方法

    こんばんは。 エクセルのセルで数字とアルファベットの文字列を分割する方法を教えて下さい。 100AB3.4C → "100" "AB" "3.4" "C" 間にスペースやカンマなど無く、文字数は異なります。 数字は小数点がある場合と無い場合があります。(上記の "100" "3.4" のように) 同じ列に同様のデータが数件~数千件あり、まとめて分割したいです。 関数もしくはマクロ(VBA)で可能であれば教えて下さい。 最近マクロの勉強を初めたのですが、方法が思いつきません。。。 宜しくお願いします。