Commit f854b878 authored by Rene Saarsoo's avatar Rene Saarsoo
Browse files

Try out comments db structure with some example queries.

parent 4b59ffd3
Loading
Loading
Loading
Loading
+33 −0
Original line number Diff line number Diff line
@@ -67,3 +67,36 @@ CREATE TABLE read_comments (
);


-- Example queries

-- get comments for a particular member

SELECT * FROM comments JOIN targets ON comments.target_id = targets.id
WHERE targets.sdk = ? AND targets.version = ? AND targets.type = ? AND targets.cls = ? AND targets.member = ?
AND comments.deleted = 'N'

-- get 100 most recent comments

SELECT * FROM comments JOIN targets ON comments.target_id = targets.id
WHERE targets.sdk = ? AND targets.version = ?
ORDER BY created_at DESC LIMIT 100

-- get number of comments for each target

SELECT
    target.type AS type,
    target.cls AS cls,
    target.member AS member,
    count(*) AS cnt
FROM comments JOIN targets ON comments.target_id = targets.id
WHERE target.sdk = ? AND target.version = ?
GROUP BY target.id

-- get users with the highest score

SELECT
    user.name,
    SUM(comments.rating)
FROM users JOIN comments ON comments.user_id = users.id
GROUP BY user.id