解決済み

SQLの発行方法

  • 困ってます
  • 質問No.295293
  • 閲覧数201
  • ありがとう数3
  • 気になる数0
  • 回答数4
  • コメント数0

お礼率 55% (91/164)

SQL文を発行する場合にはSQL文を変数に格納してExecuteメソッドで発行しますが、SQL文が2文になる場合(最初のSQL文であるデータを取得して、次のSQL文でそのデータを使って検索等を行うとき)にはもう一度上記の手続きを繰り返すしかないのでしょうか?。

あるいは、SQL文を長くして一文にまとめる(できる場合とできない場合があるように思うのですが)方法があるのでしょうか

一般的な処理方法を教えていただけないでしょうか

質問者が選んだベストアンサー

  • 回答No.4

ベストアンサー率 33% (1403/4213)

エンジンがACCESSの場合です。

SELECT 社員名テーブル.社員名フィールド
FROM 社員名テーブル inner join 外出中社員情報テーブル
on 社員名テーブル.社員コード = 外出中社員情報テーブル.社員コード
where 外出中社員情報テーブル.ステータス = "外出中"

でしょうか?
お礼コメント
unname1

お礼率 55% (91/164)

補足の回答をありがとうございます、解決の手がかりがつかめたように思います。
ありがとうございました。
投稿日時 - 2002-06-20 09:18:23
感謝経済、優待交換9月20日スタート

その他の回答 (全3件)

  • 回答No.3

ベストアンサー率 63% (7/11)

こんな感じではいかがでしょうか?

SELECT 社員名テーブル.社員名フイールド
FROM 社員名テーブル,外出中社員情報テーブル
WHERE 社員名テーブル.社員コード = 外出中社員情報テーブル.社員コード
AND 外出中社員情報テーブル.ステータス = '外出中'

「社員名テーブルと外出中社員情報テーブルを社員コードで連結させ、
 外出中社員情報テーブルのステータスが'外出中'のデータのみ抽出」
というSQL文です。
お礼コメント
unname1

お礼率 55% (91/164)

回答ありがとうございます、解決の手がかりがつかめたように思います。
ありがとうございました。
投稿日時 - 2002-06-20 09:17:27
  • 回答No.2

ベストアンサー率 50% (5/10)

相手のデータベースにもよりますが、以下の SQL 文でいかがでしょうか?

select 社員名フィールド
from 社員名テーブル as A
  left join 外出中社員情報テーブル as B on B.社員ID = A.社員ID
where B.外出中フラグ = 1
お礼コメント
unname1

お礼率 55% (91/164)

回答ありがとうございます、解決の手がかりがつかめたように思います。
ありがとうございました。
投稿日時 - 2002-06-20 09:16:41
  • 回答No.1

ベストアンサー率 33% (1403/4213)

> SQL文を長くして一文にまとめる
サブクエリ(副問合せ)で良いのでは?

具体的にはどのようなSQLなんでしょうか?

文末に「継続指定」があると改行していても良いのですが。

strMySQL = "select 氏名コード,氏名 from tbl社員 " _
& "where 氏名コード in (" _
& " select B.氏名コード from tbl異動履歴 " _
& " where b.何かの条件 " _
& ");"
のような書き方も有りです。
補足コメント
unname1

お礼率 55% (91/164)

早速の回答ありがとうございます

>具体的にはどのようなSQLなんでしょうか?

SQLといいますか、(そもそもSQLで処理をすることが正しいかの判断もつかないのですが。)したい処理は下記のような内容です。

VBのデータコンボボックスに「社員名テーブル」の「社員名フイールド」を表示したいのですが、ここに表示する社員名を「外出中社員情報テーブル」を検索して外出中の社員だけ表示したいのです。

処理方法自体が試行錯誤の段階なのですが、現時点では上記方法で抽出したビューかテーブルをデータコンボボックスに表示しようと思っているのですが、データコンボボックスではうまく実現できないように感じています

いずれにせよ社員名テーブルから外出中をキーワードにして社員名を絞り込む作業をしなくてはいけないと思っているのですが・・・。

もし、根本的に考え方が間違っているようでしたら「その処理の場合は私ならこうする」という考え方だけでも示していただければと思います。
投稿日時 - 2002-06-19 14:05:29
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

特集


より良い社会へ。感謝経済プロジェクト始動

ピックアップ

ページ先頭へ