在sql包中,Query和QueryRow之间是否存在显著的性能差异?

3

这两种技术之间是否存在显著的性能差异?

func (db *DB) Query(query string, args ...interface{}) (*Rows, error)

并且

func (db *DB) QueryRow(query string, args ...interface{}) *Row

即使在您的查询末尾加上LIMIT 1;,在"database/sql"包中仍然可以返回多个结果。

1个回答

3

区别在于函数调用的开销(与向数据库发送查询相比几乎没有)。QueryRow调用Query,然后将结果包装在一个sql.Row中。


@Alex,使用源代码(还可以参考Row.Scan)。 - undefined

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接