Как я могу использовать сканирование структуры sqlx в ситуациях, когда я присоединяюсь к таблицам?
Например, предположим, что у Person много сообщений, и я хочу получить структуру, в которую встроены сообщения людей в виде среза.
Я представляю себе DTO следующим образом:
type Person struct {
Id string `json:"id"`
Name string `json:"name"`
Posts []*Post `json:"posts"`
}
type Post struct {
Id string `json:"post_id"`
}
SQL, который я предполагаю использовать, будет
SELECT
psn.id,
psn.name,
pst.id AS post_id
FROM
person psn
JOIN posts pst ON pst.person_id = psn.id
Это выполнимо в sqlx? Как?
Is this accomplishable in sqlx? How?
Это не особенность sqlx, это не ORM. Это просто удобная оболочка, которая, среди прочего, упрощает выделение строк в плоские структуры.
Вам нужно либо самостоятельно обработать несколько строк для каждого пользователя, либо выполнить два запроса, сначала для человека, а затем для его сообщений.