{ "db_name": "PostgreSQL", "query": "\n SELECT m.id AS \"id!\",\n m.room_id AS \"room_id!: RoomId\",\n m.user_id AS \"user_id?: UserId\",\n m.client_message_id,\n m.content AS \"content!\",\n m.message_type AS \"message_type!: ChatMessageType\",\n m.status AS \"status!: ChatMessageStatus\",\n m.version AS \"version!\",\n m.reply_to_message_id,\n m.reply_to_message_created_at,\n m.metadata AS \"metadata?: ChatMetadata\",\n m.edited_at,\n m.deleted_at,\n m.deleted_by AS \"deleted_by?: UserId\",\n m.delete_reason,\n m.created_at AS \"created_at!\"\n FROM chat_messages m\n WHERE m.room_id = $1\n AND m.status <> $3\n AND m.deletion_source IS DISTINCT FROM $4\n AND m.created_at <= $5\n AND EXISTS (\n SELECT 1 FROM chat_message_reactions r\n WHERE r.room_id = m.room_id\n AND r.message_id = m.id\n AND r.message_created_at = m.created_at\n AND r.user_id = $2\n AND r.created_at <= $6\n )\n ORDER BY m.created_at ASC, m.id ASC\n LIMIT $7\n FOR UPDATE\n ", "describe": { "columns": [ { "ordinal": 0, "name": "id!", "type_info": "Int8", "origin": { "Table": { "table": "chat_messages", "name": "id" } } }, { "ordinal": 1, "name": "room_id!: RoomId", "type_info": "Int8", "origin": { "Table": { "table": "chat_messages", "name": "room_id" } } }, { "ordinal": 2, "name": "user_id?: UserId", "type_info": "Int8", "origin": { "Table": { "table": "chat_messages", "name": "user_id" } } }, { "ordinal": 3, "name": "client_message_id", "type_info": "Text", "origin": { "Table": { "table": "chat_messages", "name": "client_message_id" } } }, { "ordinal": 4, "name": "content!", "type_info": "Text", "origin": { "Table": { "table": "chat_messages", "name": "content" } } }, { "ordinal": 5, "name": "message_type!: ChatMessageType", "type_info": "Int2", "origin": { "Table": { "table": "chat_messages", "name": "message_type" } } }, { "ordinal": 6, "name": "status!: ChatMessageStatus", "type_info": "Int2", "origin": { "Table": { "table": "chat_messages", "name": "status" } } }, { "ordinal": 7, "name": "version!", "type_info": "Int8", "origin": { "Table": { "table": "chat_messages", "name": "version" } } }, { "ordinal": 8, "name": "reply_to_message_id", "type_info": "Int8", "origin": { "Table": { "table": "chat_messages", "name": "reply_to_message_id" } } }, { "ordinal": 9, "name": "reply_to_message_created_at", "type_info": "Timestamptz", "origin": { "Table": { "table": "chat_messages", "name": "reply_to_message_created_at" } } }, { "ordinal": 10, "name": "metadata?: ChatMetadata", "type_info": "Jsonb", "origin": { "Table": { "table": "chat_messages", "name": "metadata" } } }, { "ordinal": 11, "name": "edited_at", "type_info": "Timestamptz", "origin": { "Table": { "table": "chat_messages", "name": "edited_at" } } }, { "ordinal": 12, "name": "deleted_at", "type_info": "Timestamptz", "origin": { "Table": { "table": "chat_messages", "name": "deleted_at" } } }, { "ordinal": 13, "name": "deleted_by?: UserId", "type_info": "Int8", "origin": { "Table": { "table": "chat_messages", "name": "deleted_by" } } }, { "ordinal": 14, "name": "delete_reason", "type_info": "Text", "origin": { "Table": { "table": "chat_messages", "name": "delete_reason" } } }, { "ordinal": 15, "name": "created_at!", "type_info": "Timestamptz", "origin": { "Table": { "table": "chat_messages", "name": "created_at" } } } ], "parameters": { "Left": [ "Int8", "Int8", "Int2", "Int2", "Timestamptz", "Timestamptz", "Int8" ] }, "nullable": [ false, false, true, true, false, false, false, false, true, true, true, true, true, true, true, false ] }, "hash": "d4c622073d58ce0154a8cf8ccd65aa4198b8ccb09166ae220fc884868f6d4aaa" }