2016-08-12 10 views
0

Rでクエリを実行して、2つの異なるサブディレクトリ間で共有コメントを確認しようとしています。しかし、私は次のエラーが発生し続ける:postgresql return tableエラー:カラム参照があいまいです

Warning: Error in postgresqlExecStatement: RS-DBI driver: (could not Retrieve the result : ERROR: column reference "subreddit" is ambiguous )

私は間違っていますか?

query <- sprintf(" 
SELECT final.subreddit_a, final.subreddit_b 
FROM 
    (SELECT a.subreddit AS subreddit_a, 
      a.authors AS authors_in_sub_a, 
      b.subreddit AS subreddit_b, 
      b.authors AS authors_in_sub_b, 
      floor(100 * (count(*)/((a.authors + b.authors)/2))) AS percentage 
    FROM 
    (SELECT t1.author AS author, 
      t1.subreddit AS subreddit, 
      t2.authors AS authors 
    FROM 
     (SELECT DISTINCT author, subreddit 
     FROM %s 
     WHERE %s author!='[deleted]') AS t1 
     JOIN 
     (SELECT * 
     FROM 
      (SELECT subreddit, count(distinct author) AS authors 
      FROM %s 
      WHERE %s author!='[deleted]' GROUP BY subreddit) AS t5 
      WHERE authors >= %s) AS t2 
     ON t1.subreddit=t2.subreddit 
     GROUP BY subreddit, author) AS a 
    JOIN 
     (SELECT t3.author AS author, 
       t3.subreddit AS subreddit, 
       t4.authors AS authors 
     FROM 
     (SELECT DISTINCT author, subreddit 
     FROM %s 
     WHERE %s author!='[deleted]') AS t3 
     JOIN 
      (SELECT * 
      FROM 
      (SELECT subreddit, count(distinct author) AS authors 
      FROM %s 
      WHERE %s author!='[deleted]' GROUP BY subreddit) AS t6 
      WHERE authors >= %s) AS t4 
     ON t3.subreddit=t4.subreddit 
     GROUP BY subreddit, author) AS b 
     ON a.author=b.author 
    WHERE a.subreddit!=b.subreddit GROUP BY 1,3) AS final 
    WHERE final.percentage > %s;" 
+2

でテーブル名にエイリアスを使用する必要があります。今は時々それを行う(例えばareddit)が、エイリアス|テーブル名なしで少なくとも少数の使用があります。 – rsc

+0

[pgsql return table ERROR:列参照があいまいである可能性があります]の重複可能性があります(http://stackoverflow.com/questions/10750707/pgsql-return-table-error-column-reference-is-ambiguous) – rsc

答えて

0

table_name.subreddit代わりのsubredditを書きます。

0

あなたはそれが元だとクエリ内のsubredditフィールドのすべての使用を修飾するのに十分であるべきで、長い選択クエリ

関連する問題