我正在使用sqlx crate与 Postgres 实例进行交互。
我有以下功能:
pub async fn fetch_tweets_by_metric(
pool: &PgPool,
metric: &str,
) -> Result<Vec<Tweet>, sqlx::error::Error> {
let tweets = sqlx::query_as!(
Tweet,
r#"
SELECT *
FROM tweets
ORDER BY $1 DESC
"#,
metric,
)
.fetch_all(pool)
.await?;
Ok(tweets)
}
我想按表中的一列对结果进行排序,以metric
. 如果我只是传递一个带有列名的字符串,它就不起作用(即上面的代码被破坏了)。
正确的方法是什么?我在 google 的文档 / 中找不到任何内容。