我想用 Prisma 对字符串列进行排序而不是使用 $queryRaw
I want to sort string column with Prisma not use $queryRaw
我用MySQL.
名为 AGE
的列包含字符串形式的数字。
如果我用prisma排序,就不是1-2-...-9
1-11-2-333-...-88-9 这样排序。
我想知道除了使用 $queryRaw 之外还有什么方法可以排序。
您的模型将类似于:
model Person {
id Int @id
name String
age Int
}
Prisma 为 orderBy
字段生成的类型定义是:
export type PersonOrderByWithRelationInput = {
id?: SortOrder
name?: SortOrder
age?: SortOrder
}
…并且SortOrder
定义为:
export const SortOrder: {
asc: 'asc',
desc: 'desc'
};
export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]
不幸的是,这意味着无法orderBy
在这里做你想做的事。
您的选择是:
- 使用
queryRaw
,
- 对 Prisma 在 JavaScript / TypeScript 中返回的数组进行排序,
- use a materialized view.
我用MySQL.
名为 AGE
的列包含字符串形式的数字。
如果我用prisma排序,就不是1-2-...-9
1-11-2-333-...-88-9 这样排序。
我想知道除了使用 $queryRaw 之外还有什么方法可以排序。
您的模型将类似于:
model Person {
id Int @id
name String
age Int
}
Prisma 为 orderBy
字段生成的类型定义是:
export type PersonOrderByWithRelationInput = {
id?: SortOrder
name?: SortOrder
age?: SortOrder
}
…并且SortOrder
定义为:
export const SortOrder: {
asc: 'asc',
desc: 'desc'
};
export type SortOrder = (typeof SortOrder)[keyof typeof SortOrder]
不幸的是,这意味着无法orderBy
在这里做你想做的事。
您的选择是:
- 使用
queryRaw
, - 对 Prisma 在 JavaScript / TypeScript 中返回的数组进行排序,
- use a materialized view.