messages.sql 764 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. -- name: GetMessage :one
  2. SELECT *
  3. FROM messages
  4. WHERE id = ? LIMIT 1;
  5. -- name: ListMessagesBySession :many
  6. SELECT *
  7. FROM messages
  8. WHERE session_id = ?
  9. ORDER BY created_at ASC;
  10. -- name: ListMessagesBySessionAfter :many
  11. SELECT *
  12. FROM messages
  13. WHERE session_id = ? AND created_at > ?
  14. ORDER BY created_at ASC;
  15. -- name: CreateMessage :one
  16. INSERT INTO messages (
  17. id,
  18. session_id,
  19. role,
  20. parts,
  21. model
  22. ) VALUES (
  23. ?, ?, ?, ?, ?
  24. )
  25. RETURNING *;
  26. -- name: UpdateMessage :exec
  27. UPDATE messages
  28. SET
  29. parts = ?,
  30. finished_at = ?,
  31. updated_at = strftime('%Y-%m-%dT%H:%M:%f000Z', 'now')
  32. WHERE id = ?;
  33. -- name: DeleteMessage :exec
  34. DELETE FROM messages
  35. WHERE id = ?;
  36. -- name: DeleteSessionMessages :exec
  37. DELETE FROM messages
  38. WHERE session_id = ?;