diff options
author | enahum <nahumhbl@gmail.com> | 2016-10-20 11:28:19 -0300 |
---|---|---|
committer | Harrison Healey <harrisonmhealey@gmail.com> | 2016-10-20 10:28:19 -0400 |
commit | 162282d42c1be601c30a5bd8f89cca548a1bf9ba (patch) | |
tree | a896cd164e3daab93185cacd946b98cbb6656c04 /store/sql_post_store.go | |
parent | 2e34d8843e14093880f62a8c3e1075cb0f0bfc8e (diff) | |
download | chat-162282d42c1be601c30a5bd8f89cca548a1bf9ba.tar.gz chat-162282d42c1be601c30a5bd8f89cca548a1bf9ba.tar.bz2 chat-162282d42c1be601c30a5bd8f89cca548a1bf9ba.zip |
PLT-4358 Exclude Channels from query when not necessary (#4269)
Diffstat (limited to 'store/sql_post_store.go')
-rw-r--r-- | store/sql_post_store.go | 41 |
1 files changed, 20 insertions, 21 deletions
diff --git a/store/sql_post_store.go b/store/sql_post_store.go index 44ffb556e..05e298ed3 100644 --- a/store/sql_post_store.go +++ b/store/sql_post_store.go @@ -815,15 +815,15 @@ func (s SqlPostStore) AnalyticsUserCountsWithPostsByDay(teamId string) StoreChan `SELECT DISTINCT DATE(FROM_UNIXTIME(Posts.CreateAt / 1000)) AS Name, COUNT(DISTINCT Posts.UserId) AS Value - FROM Posts - INNER JOIN Channels - ON Posts.ChannelId = Channels.Id` + FROM Posts` if len(teamId) > 0 { - query += " AND Channels.TeamId = :TeamId" + query += " INNER JOIN Channels ON Posts.ChannelId = Channels.Id AND Channels.TeamId = :TeamId AND" + } else { + query += " WHERE" } - query += ` AND Posts.CreateAt >= :StartTime AND Posts.CreateAt <= :EndTime + query += ` Posts.CreateAt >= :StartTime AND Posts.CreateAt <= :EndTime GROUP BY DATE(FROM_UNIXTIME(Posts.CreateAt / 1000)) ORDER BY Name DESC LIMIT 30` @@ -832,15 +832,15 @@ func (s SqlPostStore) AnalyticsUserCountsWithPostsByDay(teamId string) StoreChan query = `SELECT TO_CHAR(DATE(TO_TIMESTAMP(Posts.CreateAt / 1000)), 'YYYY-MM-DD') AS Name, COUNT(DISTINCT Posts.UserId) AS Value - FROM Posts - INNER JOIN Channels - ON Posts.ChannelId = Channels.Id` + FROM Posts` if len(teamId) > 0 { - query += " AND Channels.TeamId = :TeamId" + query += " INNER JOIN Channels ON Posts.ChannelId = Channels.Id AND Channels.TeamId = :TeamId AND" + } else { + query += " WHERE" } - query += ` AND Posts.CreateAt >= :StartTime AND Posts.CreateAt <= :EndTime + query += ` Posts.CreateAt >= :StartTime AND Posts.CreateAt <= :EndTime GROUP BY DATE(TO_TIMESTAMP(Posts.CreateAt / 1000)) ORDER BY Name DESC LIMIT 30` @@ -877,16 +877,15 @@ func (s SqlPostStore) AnalyticsPostCountsByDay(teamId string) StoreChannel { `SELECT DATE(FROM_UNIXTIME(Posts.CreateAt / 1000)) AS Name, COUNT(Posts.Id) AS Value - FROM Posts - INNER JOIN Channels - ON - Posts.ChannelId = Channels.Id` + FROM Posts` if len(teamId) > 0 { - query += " AND Channels.TeamId = :TeamId" + query += " INNER JOIN Channels ON Posts.ChannelId = Channels.Id AND Channels.TeamId = :TeamId AND" + } else { + query += " WHERE" } - query += ` AND Posts.CreateAt <= :EndTime + query += ` Posts.CreateAt <= :EndTime AND Posts.CreateAt >= :StartTime GROUP BY DATE(FROM_UNIXTIME(Posts.CreateAt / 1000)) ORDER BY Name DESC @@ -896,15 +895,15 @@ func (s SqlPostStore) AnalyticsPostCountsByDay(teamId string) StoreChannel { query = `SELECT TO_CHAR(DATE(TO_TIMESTAMP(Posts.CreateAt / 1000)), 'YYYY-MM-DD') AS Name, Count(Posts.Id) AS Value - FROM Posts - INNER JOIN Channels - ON Posts.ChannelId = Channels.Id` + FROM Posts` if len(teamId) > 0 { - query += " AND Channels.TeamId = :TeamId" + query += " INNER JOIN Channels ON Posts.ChannelId = Channels.Id AND Channels.TeamId = :TeamId AND" + } else { + query += " WHERE" } - query += ` AND Posts.CreateAt <= :EndTime + query += ` Posts.CreateAt <= :EndTime AND Posts.CreateAt >= :StartTime GROUP BY DATE(TO_TIMESTAMP(Posts.CreateAt / 1000)) ORDER BY Name DESC |