SQL2000serverで2つのデーターベースのテーブルから情報を抽出する方法は?
- SQL2000serverで異なる2つのデーターベースの中にある別のテーブルの情報をSQL文を使って抽出することは可能ですか?
- 例えば「DB-A」と「DB-B」という2つのデータベースの中のテーブルのIDフィールドをリレーションさせ、DB-AのTablA1のFldAの値(AA)からDB-BのTablB1のFldBの値(あ)を抽出することはSQL文で可能ですか?
- DB-AのテーブルTablA1のIDフィールドの値が1(AA)で、DB-BのテーブルTableB1のIDフィールドの値が1の場合、FldBの値(あ)を取得する方法を教えてください。
- ベストアンサー
SQL文で
SQL2000serverで 異なる2つのデーターベースの中にある 別のテーブルの情報を SQL文を使って、抽出する事は出来るのでしょうか? たとえば下記のように「DB-A」「DB-B」と言った 二つのDBの中のそれぞれのテーブルのIDフィールドで リレーションを取ってDB-AのTablA1のFldAの 値(AA)からDB-BのTablB1のFldBの値(あ)を 抽出することはSQL文で可能なのでしょうか? DB-A DB-B TablA1 TableB1 ID FldA ID FldB 1 AA 1 あ 2 BB 2 い 3 CC 3 う 4 DD 4 え
- minwoo
- お礼率40% (9/22)
- SQL Server
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
from 句に指定するテーブル名を 「DB名.所有者名.テーブル名」で指定すればよいと思います。 (例) select * from DB-A..TableA1 as X , DB-B..TableB1 as Y where X.ID = Y.ID (この例では所有者名を省略しています) Good Luck!
関連するQ&A
- SQL文で他テーブルの件数も同時に求めたい
SQL文について教えてください。(DBはSQLサーバー2000です。) 以下のように2つのテーブルがあります。Aテーブルのフィールド項目の抽出と、AテーブルのIDフィールドと同じ値のBテーブルの件数を同時に抽出したいのですが、どのように書いてよいか分かりません。恐れ入りますが、教えていただけないでしょうか? テーブルA ID name Age -------------- 1 太郎 20 2 二郎 35 3 花子 26 テーブルB ID memo ------------------ 1 私は男です 1 東京に住んでます 2 友達が3人います 3 私は彼氏がいます 3 先日TDLに出かけました。 3 ランチはカレーでした。 要約すると、Aテーブルの全情報とテーブルBの件数を同時に抽出したいのです。以下のようなイメージです。 name Age テーブルB件数 ------------------- 太郎、20、 2 二郎、35、 1 花子、26、 3 よろしくお願い致します。
- ベストアンサー
- その他(プログラミング・開発)
- リレーションをSQL文で作る方法は?
urizakaです 今まではSQL-Serverを使っていたのですが、今度からPostgresSQLを使うこと になりました。 さて、そこで質問なのですが、SQL文でテーブルを作るとき、他のテーブルの カラム(フィールド)と作ったテーブルのカラム(フィールド)のリレーションを 作るにはどうすれば良いのでしょうか? 特に、シリアル型で作ったフィールドの値を外部参照キーとして持ってきたい 場合はどのようにSQL文を書けばよいのでしょうか? すみませんが、よろしくお願いします。
- ベストアンサー
- その他(データベース)
- このSQL文の意味を教えてください。
SQL勉強中の者です。このSQL文の意味を教えてください。 SELECT A.* FROM table AS A, table AS B WHERE A.id *= B.id AND A.flag = 1 tableにAとBという別名をつけて、Aの全ての項目を抽出しているというところまでは分かりました。 分からないのは「WHERE A.id *= B.id」の部分です。ただの「=」なら分かりますが「*=」って何ですか? あと、AとBのテーブルが同じなのですが、同じテーブルを2つ並べている意味がよく分かりません。 よろしくお願いします。
- ベストアンサー
- その他(データベース)
- SQL文の構築について教えてください。
SQL文の構築について教えてください。 こんばんは。Oracle9iのデータベース検索で、どうしてもSQLが思い浮かばないため、質問させていただきます。 ■Table ID NUM SIGN 100 1 A 100 2 A 101 1 A 102 1 B 103 1 B 104 1 C 首キーはID、NUMです。 上記のようなテーブルで、 IDが同一かつNUMが最大のもので、 SIGNが同一のレコードで、2件以外のレコードを抽出したいです。 (例表でいうと、ID104のレコードのみが抽出されるようにしたい) すこし急ぎなんですが、SQLが得意でお時間がある方、力を貸していただけないでしょうか。 よろしくお願い致します。
- ベストアンサー
- Oracle
- あいまい条件抽出についてのSQL文について
あいまい条件抽出についてのSQL文について hiroです。 SQL文について、教えてほしいのですが、 下記のようなDatabaseがあったとします。 tableA:カラムA:ABCDE,BCDEA tableB:カラムB:??C?? この場合、例えば、 SELECT * FROM DataBase WHERE tableA.カラムA like tableB.カラムB みたいな感じで、カラムAのABCDEだけを検索するような仕組みを作ることは 可能でしょうか? ※上のSQL文では引っ張れないのは理解できています。 わかる方がいらっしゃいましたら、SQL文を教えてください。 よろしくお願いします。 環境:Oracle 11g
- ベストアンサー
- Oracle
- SQL文の書き方
SQL文の書き方を教えて下さい。 以下の2つのクエリー(1のクエリー&2のクエリー)を1つのクエリーで1度に抽出をかけたいのですがSQL文の書き方がわかりません。 データの発生条件としては TableBのField1は必ずTableAのField1に存在するという条件です。 TableAのField1が「AAA」から「EEE」まである場合は、TableBのField1も必ず「AAA」から「EEE」の範囲内で発生します。 よろしくお願い致します。 1のクエリー ---------------------------------------------------------------- TableA Field1 ---------------------------------------------------------------- AAA AAA AAA BBB BBB CCC DDD DDD EEE EEE EEE ---------------------------------------------------------------- Field1をサマライズしてカウントと名称を取得するクエリー Select Count(TableA.Field1) as RecCount, TableA.Field1 From TableA 結果 RecCount Field1 3 AAA 2 BBB 1 CCC 2 DDD 3 EEE ---------------------------------------------------------------- 2のクエリー ---------------------------------------------------------------- TableB Field1 ---------------------------------------------------------------- BBB CCC CCC EEE ---------------------------------------------------------------- Field1をサマライズしてカウントと名称を取得するクエリー Select Count(TableB.Field1) as RecCount, TableB.Field1 From TableB 結果 RecCount Field1 1 BBB 2 CCC 1 EEE ---------------------------------------------------------------- 希望する結果 TableAのRecCount TableBのRecCount TableAのField1 3 AAA 2 1 BBB 1 2 CCC 2 DDD 3 1 EEE
- ベストアンサー
- SQL Server
- 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
- 【Access】SQL文教えてください!
基本的な質問かもしれませんが・・・ テーブル名:test フィールド名:aa,bb,cc,dd,ee,ff (すべて数値型) aa~ccの合計からdd~ffの合計までの間を抽出したいのです。 どう書けばいいんでしょう?
- ベストアンサー
- その他(データベース)
お礼
解決致しました!! 有難う御座いました。
補足
ご回答有難う御座います。 実際にはADOで、SQLサーバーへの問合せを考えているのですが、その場合二つのデータベースを同時に接続しておくのでしょうか? もうそうだとしたらどのように接続を確立すればよいのか 教えて頂けませんか? Set DB= Server.CreateObject"ADODB.Connection") Set RS= Server.CreateObject("ADODB.Recordset") DB.ConnectionString = "Provider=SQLOLEDB.1;SERVER=TEST;DATABASE=DB-A" DB.Open sSQL="select * from DB-A..TableA1 as X , DB-B..TableB1 as Y where X.ID = Y.ID" RS.Open sSQL, DB 上記だとDB-Aのデータベースしか開けてないからダメですよね? ご教授のほど宜しくお願い致します。