UNPKG

@lcap/nasl

Version:

NetEase Application Specific Language

23 lines (21 loc) 1.19 kB
declare namespace nasl.oql { /** * SQL数据查询 * @param sql 数据查询需要的 SQL * @returns 返回查询结果列表 * 关于T的类型说明: * 1. 如果查询字段均来自一个数据表,T为该数据表的类型 * 2. 如果查询字段来自多个数据表,那么T为匿名类型,包含所有查询字段, 如:{name: string, age: number} * 在调用时,T可以不指定,平台会自动进行推断 * * 优先使用数据库的查询和数据操纵能力,例如 JOIN、SUM、GROUP_BY 等 * 所有变量格式为:${variable},不能用''包裹,不能用函数处理。 * @example nasl.oql.query(`SELECT * FROM Student WHERE id = ${id}`) * @example nasl.oql.query(`SELECT OrderProduct.*, Product.price as price FROM OrderProduct JOIN Product WHERE orderId = ${orderId}`) * 可直接使用list查询,无需拼接成字符串 * @example nasl.oql.query(`SELECT * FROM Student WHERE id IN ${idList}`) */ export function query<T>(sql: string): List<T> | T; } /* 分页组件函数,用于分页 */ declare function PAGINATE<T>(list: List<T>, page: Integer, size: Integer): { list: List<T>, total: Integer; };