Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


562 / 2272 ツリー ←次へ | 前へ→

【11135】テーブル構造を変更するには akaishi 09/5/24(日) 22:01 質問[未読]
【11137】Re:テーブル構造を変更するには 09/5/27(水) 15:34 回答[未読]
【11145】Re:テーブル構造を変更するには akaishi 09/5/29(金) 14:59 質問[未読]
【11148】Re:テーブル構造を変更するには 09/6/1(月) 9:26 回答[未読]
【11150】Re:テーブル構造を変更するには akaishi 09/6/1(月) 22:20 お礼[未読]

【11135】テーブル構造を変更するには
質問  akaishi  - 09/5/24(日) 22:01 -

引用なし
パスワード
   いつもお世話になっております。
 
 以下のことを処理しようとして、試行錯誤でやってみましたが、
解決にはいかなくて、投稿しました。よろしくお願いします。

一、処理したいこと
Aテーブル
名前  性別  年齢  国語  英語  数学  理科
鈴木健 男   16   80   90   70   60


AAクエリ
名前  性別  年齢  科目  点数
鈴木健 男   16   国語  80
鈴木健 男   16   英語  90
鈴木健 男   16   数学  70
鈴木健 男   16   理科  60


二、処理方法
問題点:科目の処理ができていないので、どうすれば、イメージの通りに
    なるのでしょうか?

SELECT 名前,性別,年齢,科目,国語 AS 点数
FROM Aテーブル
UNION
SELECT 名前,性別,年齢,科目,英語 AS 点数
FROM Aテーブル
UNION
SELECT 名前,性別,年齢,科目,数学 AS 点数
FROM Aテーブル
UNION
SELECT 名前,性別,年齢,科目,理科 AS 点数
FROM Aテーブル

【11137】Re:テーブル構造を変更するには
回答    - 09/5/27(水) 15:34 -

引用なし
パスワード
   こんにちわ。雅です。

>SELECT 名前,性別,年齢,科目,国語 AS 点数
>FROM Aテーブル
>UNION
>SELECT 名前,性別,年齢,科目,英語 AS 点数
>FROM Aテーブル
>UNION
>SELECT 名前,性別,年齢,科目,数学 AS 点数
>FROM Aテーブル
>UNION
>SELECT 名前,性別,年齢,科目,理科 AS 点数
>FROM Aテーブル

おしいですね。
SELECT 名前,性別,年齢,"国語" AS 科目,国語 AS 点数
FROM Aテーブル
UNION
SELECT 名前,性別,年齢,"英語" AS 科目,英語 AS 点数
FROM Aテーブル
UNION
SELECT 名前,性別,年齢,"数学" AS 科目,数学 AS 点数
FROM Aテーブル
UNION
SELECT 名前,性別,年齢,"理科" AS 科目,理科 AS 点数
FROM Aテーブル
でどうでしょ。

でわ。

【11145】Re:テーブル構造を変更するには
質問  akaishi  - 09/5/29(金) 14:59 -

引用なし
パスワード
   ▼雅 さん:

 ご回答いただき、ありがとうございました。
 点数が入っていないレコードの結合をしない場合は、どのように制御にすれば
いいでしょうか?

【11148】Re:テーブル構造を変更するには
回答    - 09/6/1(月) 9:26 -

引用なし
パスワード
   おはようございます。雅です。

> 点数が入っていないレコードの結合をしない場合は、どのように制御にすれば
>いいでしょうか?

入っていないのは0なのかNULLなのかによって条件が変わります。

SELECT 名前,性別,年齢,"国語" AS 科目,国語 AS 点数
FROM Aテーブル
WHERE 国語 Is Null ← 0 なら WHERE 国語<>0
UNION
SELECT 名前,性別,年齢,"英語" AS 科目,英語 AS 点数
FROM Aテーブル
WHERE 英語 Is Null
UNION
SELECT 名前,性別,年齢,"数学" AS 科目,数学 AS 点数
FROM Aテーブル
WHERE 数学 Is Null
UNION
SELECT 名前,性別,年齢,"理科" AS 科目,理科 AS 点数
FROM Aテーブル
WHERE 理科 Is Null
こんな感じでどうでしょう。

でわ。

【11150】Re:テーブル構造を変更するには
お礼  akaishi  - 09/6/1(月) 22:20 -

引用なし
パスワード
   問題解決!
ありがとうございました。

562 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078197
(SS)C-BOARD v3.8 is Free