如何识别结果集中postgres的最后一行?

我正在使用 Postgres 9.5 并使用 golang 库 lib/pq 与数据库进行交互。我执行一个返回多行的选择查询,然后我使用for rows.Next()Is there Anyway I ca stop before the lat 记录进行迭代。如果它是最后一条记录,我想在控制台上打印其他东西。类似于以下内容:


for rows.Next() {


    var id string

    err = rows.Scan(&id)

    if err != nil {

        log.Printf("Error in rows.Scan: %s\n", err)

    }


    if (row is not last) {

        fmt.Println(id + "I am not last")

    } else {

        fmt.Println(id + "I am last")

    }

}


噜噜哒
浏览 251回答 1
1回答

qq_花开花谢_0

你可以在 go 中实现类似 do while 循环的东西。notLast := rows.Next()for notLast {    //... rows.Scan    notLast = rows.next()    if notLast {        fmt.Println(id + "I am not last")    } else {        fmt.Println(id + "I am last")    }}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go