Hi guys i want to do something like this `export f...
# orm-help
h
Hi guys i want to do something like this
export function getGroupEventId(event_type, event_value){
 
return runQuery(
   
prisma.groupevent.findUnique({
     
where: {
       
event_type: event_type?.substr(0, 50),
       
event_value: event_value?.substr(0, 50),
     
}
   
})
 
)
}
I want to "select" a groupevent_id where his event_type and value are the same as parameters, how can i do that in prisma ?
m
Hi. For
findUnique
to work you would need to have
event_type
and
event_value
marked as
@unique
. If you don't want them unique, you need to use
.findFirst
h
Ok i see and can i do something like this ?
groupevent_id row exist in event table btw
m
I don't think so 🙂 You would probably need to fetch the groupevent_id beforehand to have it available there
h
yeah but my function is this
export function getGroupEventIdQuery(event_value, event_type) {
 
return runQuery(
    `prisma.$queryRaw`select groupevent_id from groupevent g where g.event_value=${event_value} and g.event_type=${event_type}`,
Copy code
);` } i fetch it here no ?
m
But why the raw query? I don't know if it works there. Try. Or just run two queries after another:
Copy code
const groupevent = await prisma.groupevent.findFirst({
  where: {
    event_type: event_type?.substr(0, 50),
    event_value: event_value?.substr(0, 50),
  },
  select: {
    groupevent_id: true
  }
})

await prisma.event.create({
  data: {
    website_id,
    session_id,
    url: url?.substr(0, URL_LENGTH),
    event_type: event_type?.substr(0, 50),
    event_value: event_value?.substr(0, 50),
    ...groupevent
  }
})
h
Found the solution, it works with raw.query thanks btw for your help mate