OSDN Git Service

Model::Firehose: fix select() to eliminate duplicated entry
authorhylom <hylom@users.sourceforge.jp>
Wed, 3 Apr 2019 11:14:04 +0000 (20:14 +0900)
committerhylom <hylom@users.sourceforge.jp>
Wed, 3 Apr 2019 11:14:04 +0000 (20:14 +0900)
src/newslash_web/lib/Newslash/Model/Firehose.pm

index 9060a76..e91d8dc 100644 (file)
@@ -91,11 +91,13 @@ sub select {
 
     my $dbh = $self->connect_db;
     my $sql = <<"EOSQL";
-SELECT firehose.id AS firehose_id, firehose.*, firehose_text.*, topics.tid, stories.sid, users.nickname AS author
+SELECT DISTINCT firehose.id AS firehose_id, firehose.*, firehose_text.*, topics.tid, stories.sid,
+       users.nickname AS author, urls.url
   FROM firehose
     LEFT JOIN topics ON firehose.tid = topics.tid
     LEFT JOIN firehose_text ON firehose.id = firehose_text.id
     LEFT JOIN stories ON firehose.type = "story" AND firehose.srcid = stories.stoid
+    LEFT JOIN urls ON firehose.type = "submission" AND firehose.url_id = urls.url_id
     LEFT JOIN users ON firehose.uid = users.uid
     $join_clause
     $where_clause