summaryrefslogtreecommitdiff
path: root/query/messages.sql
blob: 063b5764e4e13f773bf283633044c86ae842bba5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
-- name: GetMessageById :one
SELECT * FROM messages
WHERE id = ?;

-- name: GetFrequencyMessages :many
SELECT * FROM messages
WHERE frequency_id = ?
ORDER BY id;

-- name: GetDirectMessages :many
SELECT * FROM messages
WHERE
  (sender_id = @user1 AND receiver_id = @user2) OR 
  (sender_id = @user2 AND receiver_id = @user1)
ORDER BY id;

-- name: CreateMessage :one
INSERT INTO messages (
  id, content, sender_id, frequency_id, receiver_id
) VALUES (
  ?, ?, ?, ?, ?
)
RETURNING *;

-- name: EditMessage :one
UPDATE messages SET
  edited = true,
  content = ?
WHERE id = ?
RETURNING *;

-- name: DeleteMessage :exec
DELETE FROM messages
WHERE id = ?;