React 앱에서 aws-amplify 라이브러리를 사용해서 AWS AppSync GraphQL을 사용할 때 filtering 하는 방법에 대해서 정리하려고 합니다.
아래는 필터링 옵션을 정리해둔 것입니다. less, greater, between은 숫자인 경우에만 가능합니다.
ne: number, string # "not equal to"
eq: number, string # "equal to"
le: number # "less than or equal to"
lt: number # "less than"
ge: number # "greater than or equal to"
gt: number # "greater than"
between: [number]
eq 옵션 사용
let filter = {
groupName: {
eq: 'devicegroup1',
},
}
const result = await API.graphql({
query: queries.listDevices,
variables: {
userId: `${userId}`,
filter: filter,
},
})
between 옵션 사용
const filter = {
createdTime: { between: [secondsTimestamp, nowTimestamp] },
};
참조
https://docs.amplify.aws/lib/graphqlapi/query-data/q/platform/js/#filtering-queries