![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
データデータベース(DataDB)
memberNo|memberName|data1|data2
タイトルデータベース(TitleDB)
Title1|Title2
という二つのデータベースがあったとして
これをセレクト文で表にする時に、
data1とdata2のタイトルはTitleDBの1,2の内容をタイトルにしたいと思っています。
そこで以下のように記述してみましたが、エラーがでてしまいます。
『select memberNo as '会員番号',memberName as '会員名',data1 as TitleDB.Title1 ,data2 as TitleDB.Title2 from dataDB,TitleDB』
どのように実現すればよいのでしょうか?
※『select memberNo as '会員番号',memberName as '会員名',data1 as 'データ1' ,data2 as 'データ2' from dataDB,TitleDB』
の場合エラーはでません。
No.2ベストアンサー
- 回答日時:
#1回答者です。
何となく、やりたいことが分かりました。
TitleDBの内容をヘッダのように表示し、それ以降にDataDBの内容を表示したいということですね?
UNIONを使う方法が、簡単だと思います。
(1)表定義&データ例
create table TitleDB
(Title1 varchar(50),
Title2 varchar(50));
create table DataDB
(memberNo char(5),
memberName varchar(20),
data1 varchar(50),
data2 varchar(50));
insert into TitleDB values('好きな食べ物','好きな飲み物');
insert into DataDB values('0001','田中','ばなな','コーラ');
insert into DataDB values('0002','鈴木','りんご','ビール');
(2)検索SQL例
select
0 as SortKey,'会員番号' as 会員番号,'会員名' as 会員名,Title1 as タイトル1,Title2 as タイトル2
from TitleDB
union
select 1 as SortKey,memberNo,memberName,data1,data2
from DataDB
order by SortKey
;
この検索により、1行目にタイトル情報、それ以降にデータが検索できます。
SortKeyというのは、タイトル→データの順序保証をするために加えています。
No.1
- 回答日時:
「式 as 別名」は、列や式に別名を付けるものであって、ここに「表名.列名」は書けないし、書く意味がありません。
二つの表を結合する条件もないので、期待する検索結果は得られないと思いますよ?
DataDB表とTitleDB表を関連付ける方法は、何なのでしょうか?
data1列、data2列とTitle1列、Title2列には、それぞれ同じ値が入っているのですか?
→そうなら、結合すること自体不要。
どのデータとどのタイトルを結合するのか、という情報が必要です。
この回答への補足
data1列、data2列はいわゆる『内容』が入っていまして
Title1列、Title2列には、上記の内容に対する表題が入っています。
このデータは、自由項目という意味をもってまして、
Aさんの顧客管理データベースでは、ここに、
Title1列⇒備考
data1列⇒備考の内容
Title2⇒好きなゲーム
data2⇒ドラクエ
Bさんの顧客管理データベースでは、はここに
Title1列⇒好きな食べ物
data1列⇒ばなな
Title2⇒好きな飲み物
data2⇒コーラ
AさんとBさんは別のデータベースになります。
Bさんのデータベースで表を作りたい時
○データデータベース(DataDB)
会員番号|会員名|データ1|データ2
00001|田中|ばなな|コーラ
00002|鈴木|りんご|ビール
○タイトルデータベース(TitleDB)
タイトル1|タイトル2
好きな食べ物|好きな飲み物
こういったデータベースになり、この『好きな食べ物』と『好きな飲み物』をタイトルとして使用して取得したいのです。
※タイトルにしたい理由は
・取得したデータをプログラムで表としてそのまま貼り付けたい。
・並べ替えを行なうときに 「order by '好きな食べ物'」としたい
というわけなのです、どうすればいいのでしょうか?
データベースの作りを変えないとだめですか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) access count数を変数に格納 2 2022/03/30 19:21
- その他(プログラミング・Web制作) pandasでまとめてインデックスを削除するにはどうすればいいですか? たとえば、以下のプログラムで 1 2022/07/31 23:09
- Visual Basic(VBA) 【VBA】Excelの特定範囲のセルを画像で保存したい 2 2023/01/25 13:06
- PostgreSQL SQLで検索結果の記事を表示したい 1 2022/04/28 21:03
- Excel(エクセル) 【マクロ】スクショ印刷がうまく動かない件 5 2022/12/06 17:37
- Access(アクセス) 実行時エラー3131 FROM 句の構文エラーです について 7 2022/06/13 15:45
- Visual Basic(VBA) Sheet2の日付をキーにオートフィルターで2023年1月のデータを抽出し、Sheet3へ書き出すた 2 2023/03/06 23:57
- Visual Basic(VBA) エクセル VBA 処理スピードを上げたいのですが。 6 2023/03/31 20:52
- Visual Basic(VBA) 【前回の続き続きです、ご教示ください】VBAの記述方法がわかりません。 2 2022/08/24 20:49
- MySQL SQLです。下記の問合せを行うクエリを、PhpMyAdminで作成して実行せよ。 「昨年の各月の総降 1 2023/07/01 00:32
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
市区町村と番地を分けたいので...
-
SQL 四分位を組み込む
-
『select data1 as
-
1列おきに合計、a1 + c1 + e1 …
-
差し込み後、元データを変更し...
-
外部参照してるキーを主キーに...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
Oracleのデータ型、NUMBERについて
-
SQLServerで文字列の末尾からあ...
-
SQL Left Join で重複を排除す...
-
EXISTSを使ったDELETE文
-
SELECT 文 GROUP での1件目を...
-
カーソル0件の時にエラーを発生...
-
1日に1人がこなせるプログラム...
-
重複していないレコードの抽出...
-
ACCESSで、履歴事項を管理する...
-
止まなーい雨はない でもお前に...
-
Unionの結果全体をOrder By し...
-
1、Rstudioで回帰直線を求める...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
市区町村と番地を分けたいので...
-
SQL 四分位を組み込む
-
調和平均とはなんですか?
-
『select data1 as
-
差し込み後、元データを変更し...
-
フィルターかけた後、重複を除...
-
エクセルで最後の文字だけ置き...
-
外部参照してるキーを主キーに...
-
SELECT 文 GROUP での1件目を...
-
for whichの使い方
-
SQLで特定の項目の重複のみを排...
-
INSERT文でフィールドの1つだ...
-
過剰なオブジェクト指向脳から...
-
カーソル0件の時にエラーを発生...
-
datetime型でNULL値を入れたい。
-
SQL Date型の列から年月だけを...
-
速度が低下し無効になったアド...
-
副問合せの書き方について
-
1、Rstudioで回帰直線を求める...
-
重複していないレコードの抽出...
おすすめ情報