![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
はまっています。お知恵を貸してください。
Oracle8i WindowsNT4.0です。
tbl_testというテーブルがあります。
データが以下のように入っています。
col1 col2 col3
---------------------------------
A B C
A
B A A
C
この時、col1 col2 col3それぞれのカラムの中で、
Aという値が何個あるか数えたいのです。
今は以下のように三つにわけてセレクトしていますが、
これをひとつの式にまとめたいのですが、可能でしょうか?
UNIONしても欲しい答えは返ってきません。
===========================
SELECT COUNT(col1) AS col1
FROM tbl_test
WHERE col1 = 'A'
===========================
SELECT COUNT(col2) AS col2
FROM tbl_test
WHERE col2 = 'A'
===========================
SELECT COUNT(col3) AS col3
FROM tbl_test
WHERE col3 = 'A'
欲しい答えは、
col1 col2 col3
-----------------------
1 2 1
です。
なお、家に検証環境が無いので、検証&お礼は明日のお昼くらいになると思います。
宜しくお願い致します。
No.2ベストアンサー
- 回答日時:
間違えました。
合計値をほしいわけじゃないんですね(^^;;こちらです。
select t1.col, t2,col, t3.col from
( SELECT count(col1) col
FROM tbl_test
WHERE col1 = 'A' ) t1,
( SELECT count(col2) col
FROM tbl_test
WHERE col2 = 'A' ) t2,
( SELECT count(col3) col
FROM tbl_test
WHERE col3 = 'A' ) t3
No.4
- 回答日時:
SELECT
SUM(DECODE(col1,'A',1,0)) AS col1,
SUM(DECODE(col2,'A',1,0)) AS col2,
SUM(DECODE(col3,'A',1,0)) AS col3
FROM tbl_test
でどうでしょうか?
テストしていませんが、こんな感じで出来たと思います。
ありがとうございます。
検証したのですが、少し違う値が返ってくるようです。
意味がわかっていないので、時間のあるときに調べてもう一度やってみようと思います。
知らない使い方なので勉強になりました。
No.3
- 回答日時:
(オラクルは使ったことがないので、固有の部分は適宜修正してください。
)select sum(sum_col1) as col1
,sum(sum_col2) as col2
,sum(sum_col3) as col3
from (select count(*) as sum_col1
,0 as sum_col2
,0 as sum_col3
from tbl_test where col1='A'
union all
select 0 as sum_col1
,count(*) as sum_col2
,0 as sum_col3
from tbl_test where col2='A'
union all
select 0 as sum_col1
,0 as sum_col2
,count(*) as sum_col3
from tbl_test where col3='A'
);
もっとすっきりしたSQLがあると思いますが、取り急ぎ回答します。
No.1
- 回答日時:
union allにしてます?
select count(*) from
(
SELECT col1 col
FROM tbl_test
WHERE col1 = 'A'
union all
SELECT col2 col
FROM tbl_test
WHERE col2 = 'A'
union all
SELECT col3 col
FROM tbl_test
WHERE col3 = 'A'
);
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excel 、この式はどのように解釈すればいいのでしょうか 4 2023/02/03 08:53
- その他(コンピューター・テクノロジー) Pythonの np.indicesに関する質問です。 2 2023/02/07 08:19
- JavaScript java keyを配列で表記したい 10 2022/12/01 17:53
- その他(プログラミング・Web制作) seleniumbasic chrome操作について 1 2023/03/29 15:40
- Excel(エクセル) Excelでこの式の意味をおしえていただけますでしょうか、またどのように理解したらいいのでしょうか 3 2022/11/18 00:11
- MySQL SQLです。こんな感じですか?あってますか? うまくいきません教えてくださいお願いします 1 2023/07/08 15:27
- Access(アクセス) アクセス 有効なフィールド名、または式として認識できませんのエラー 3 2022/08/19 11:53
- MySQL うまくいきません教えてくださいお願いしますSQLです。クエリ構文です。 1 2023/07/07 12:39
- WordPress(ワードプレス) Wordpress プラグイン Mail Form 7 のファイル添付の表示が切れてしまう 1 2022/03/24 09:05
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
関係演算子が無効です。
-
こういう場合のSQLの書き方。
-
GROUP BYを行った後に結合した...
-
Accessで別テーブルの値をフォ...
-
MERGE文を単体テーブルに対して...
-
SELECTで1件のみ取得するには?
-
Date型にNULLをセットしたい V...
-
ファイル書込みで一行もしくは...
-
カレントレコードが無い事を判...
-
【MYSQL】asでリネームしてwher...
-
あるカラムのMAX値+1をINSERTし...
-
月別、販売員別の集計がわかり...
-
Accessのクエリでフィールドの...
-
SET句内で複数の条件を指定して...
-
レコードセット(ADO.Recordset)...
-
レコード長を数えてくれる関数
-
select句副問い合わせ 値の個...
-
DataGridViewの、選択されてい...
-
select insertで複数テーブルか...
-
固定値を含む結合と複数テーブ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
関係演算子が無効です。
-
SQL 外部結合についての質問
-
Excel VBAで、Averageの範囲を...
-
TO_CHAR関数における外部結合に...
-
同じテーブルをLEFT JOIN
-
自己相関サブクエリと自己結合...
-
LEFT JOINの条件式で=’’を使用...
-
Informixで文字列を数値型に
-
内部結合する時の結合条件と制...
-
Access 結合条件設定方法
-
T-SQL 動的に優先順ごとにデー...
-
WHERE句の書き方
-
エラー「無効な識別子です」
-
エクセルVBAでSUM関数の位置を...
-
Pro*CでVARCHAR2項目の検索
-
エラー2「無効な識別子です」
-
Oracle SQL 結合の手法について
-
【修正希望】【マクロ】元デー...
-
SQLで後方の文字列を置換する方法
-
range表記をcells表記にしたい
おすすめ情報