繁体   English   中英

Graphql Prisma with nodejs查询问题

[英]Graphql Prisma with nodejs query question

我想写 SQL 查询到

SELECT 
   sm.menu_name
FROM
   shop.menu as sm LEFT JOIN shop.shop_menu as ssm
ON
   sm.idmenu = ssm.menu_id
WHERE
   sm.menu_name LIKE CONCAT('%', ?, '%')
Group by 
   sm.menu_name
Order by rand()

我怎样才能在下面写这个?

await prisma.menu.findMany({})

请帮忙!

  • 不需要您的 LEFT JOIN
  • LIKE CONCAT -> StringFilter for prisma 有 contains、startsWith 和 endsWith
  • prisma 不支持 ORDER BY rand(),您有一些选择:在代码中随机排列数组或使用 prisma.raw 进行查询。

文档: https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/filtering https://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client /原始数据库访问

它会是这样的:

prisma.menu.groupBy({
    by: ['menu_name'],
    having: {
        shop_menu  : {
            menu_name: { contains: yourVariableName }
        }
    }
 })

但正如@mazzaker 所说,您必须自己按兰特订购:/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM