<分区>
我迷失在看似简单的事情上:
for row in &conn.query("SELECT r.id, r.name, l.name
FROM rating r LEFT JOIN location l ON r.loc_id = l.id", &[]).unwrap() {
let rating = Rating {
id: row.get(0),
name: row.get(1),
};
}
这部分有效。我无法得到的是第三列 ( row.get(2)
)。
由于 LEFT JOIN
, 这一行可以有一个 NULL
值(value)。我已经阅读了文档、此处的相关答案以及许多 Google 页面,但无法弄明白。
显然,我想使用 Option<>
不知何故。貌似我想使用 get_opt()
功能。
在伪代码中,我想要的是:
if row[2] is not null,
then $location = row[2]
else $location = null