本文整理汇总了TypeScript中sqlcmd-pg.Connection.Select方法的典型用法代码示例。如果您正苦于以下问题:TypeScript Connection.Select方法的具体用法?TypeScript Connection.Select怎么用?TypeScript Connection.Select使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类sqlcmd-pg.Connection
的用法示例。
在下文中一共展示了Connection.Select方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。
示例1: findOrCreatePackage
/**
Given a package name, return the full package row from the database, creating
one if needed.
*/
function findOrCreatePackage(name: string, callback: (error: Error, package_row?: Package) => void) {
db.Select('package')
.whereEqual({name})
.execute((error: Error, rows: Package[]) => {
if (error) return callback(error)
if (rows.length > 0) return callback(null, rows[0])
db.Insert('package')
.set({name}).returning('*')
.execute((insertError: Error, insertRows: Package[]) => {
if (insertError) return callback(insertError)
return callback(null, insertRows[0])
})
})
}
示例2: queryAverageDownloads
export function queryAverageDownloads(start: moment.Moment,
end: moment.Moment,
callback: (error: Error, packages?: {[index: string]: number}) => void) {
db.Select('package_statistic')
.add('name', 'AVG(downloads)::int AS average')
.where('downloads > -1')
.where('day >= ?', start.toDate())
.where('day < ?', end.toDate())
.groupBy('name')
.orderBy('name')
.execute((error: Error, rows: {name: string, average: number}[]) => {
if (error) return callback(error)
logger.info('averaged downloads for %d packages', rows.length)
const packages: {[index: string]: number} = {}
rows.forEach(row => packages[row.name] = row.average)
callback(null, packages)
})
}