感情分析の結果は1つの列にあります。異なるクエリの結果を1つに結合する方法は?
Neg | Neutral | Pos
---------+-----+-----
30 | 55 | 100
私は無駄に、私はインターネット上で見つけた多くの異なったアプローチを試してみた:私はこのように、どのような各数が表すカウントを表示したいと思います。 db2構文が頻繁に変更されているようですが、私が見つけたドキュメントは現在のbluemixアカウントでは機能しません。
は私が得ることができる最も近いUNIONである:
SELECT COUNT(*) as NEGATIVE FROM C7 WHERE SENTIMENT = 1
union
SELECT COUNT(*) as NEUTRAL FROM C7 WHERE SENTIMENT = 2
union
SELECT COUNT(*) as Pos FROM C7 WHERE SENTIMENT = 3
しかし、これは私を与える:
NEGATIVE
--------
30
55
100
はどのようにして各クエリのサイド・バイ・サイドの結果を組み合わせることができますか?
私は、DB2でのポストピボットからの回答を試してみましたが、私はエラーを得た:
SELECT
C7.SENTIMENT,
COUNT(CASE WHEN C7.SENTIMENT = 1 THEN Value END) AS NEGATIVE,
COUNT(CASE WHEN C7.SENTIMENT = 2 THEN Value END) AS NEUTRAL,
COUNT(CASE WHEN C7.SENTIMENT = 3 THEN Value END) AS POSITIVE,
FROM C7
GROUP BY C7.SENTIMENT
SQL0206N:SQL0206N "VALUE" は、それが使用されているコンテキストでは有効ではありません。 SQLSTATE = 42703
SELECT DISTINCT
C7.SENTIMENT,
(SELECT value FROM C7 WHERE C7.SENTIMENT = 1) AS VERY_NEGATIVE,
(SELECT value FROM C7 WHERE C7.SENTIMENT = 2) AS NEGATIVE,
(SELECT value FROM C7 WHERE C7.SENTIMENT = 3) AS NEUTRAL
FROM C7
SQL0206N:SQL0206N "VALUE" は、それが使用されているコンテキストでは有効ではありません。 SQLSTATE = 42703
[DB2でピボットする]の可能な複製(https://stackoverflow.com/questions/15529107/pivoting-in-db2) –
@ Clockwork-Muse Nopeは、これらの答えをすべて試してみましたが、うまくいきませんでした。それはなぜそうではありませんか?とにかくありがとう。 –
'VALUE'はここでキーワードとして使用されていると考えられます(これは予約語なので、少なくともいくつかのコンテキストではカラム名として使用できます)。しかし、あなたが参照しようとしているものがnullでもかまいませんが、それが何を保持しているかは気にしないので、定数を代入することができます( '1'が好きです)。 (私の経験から、カラムが見つからないので別の例外が発生するので、そのことに気づくことはありません) –