본문 바로가기
[AWS]

[DynamoDB] 두가지 필드 기준으로 정렬

by Hevton 2022. 2. 13.
반응형

 

 

schema.graphql

type Post @model {
  id: ID!
  title: String!
  content: String
  comments: [Comment] @hasMany
}

type Comment @model {
  id: ID!
  content: String
  postCommentsId: ID!
  createdAt: String!
  skA: String!
  skB: String!
  type: String! @index(name: "CommentsByDate", queryField: "CommentsByDate", sortKeyFields: ["skA", "skB"])
}

 

 

skA 기준으로 먼저 정렬, 그리고 skB 기준으로 정렬되게끔 구현된 상태이다.

 

 

오름차순 결과

{
  "data": {
    "CommentsByDate": {
      "items": [
        {
          "content": "SIX",
          "skA": "a",
          "skB": "1",
          "type": "type"
        },
        {
          "content": "TWO",
          "skA": "a",
          "skB": "a",
          "type": "type"
        },
        {
          "content": "ONE",
          "skA": "a",
          "skB": "b",
          "type": "type"
        },
        {
          "content": "THREE",
          "skA": "a",
          "skB": "c",
          "type": "type"
        },
        {
          "content": "FOUR",
          "skA": "b",
          "skB": "a",
          "type": "type"
        },
        {
          "content": "FIVE",
          "skA": "e",
          "skB": "a",
          "type": "type"
        }
      ]
    }
  }
}

 

 

내림차순 결과

{
  "data": {
    "CommentsByDate": {
      "items": [
        {
          "content": "FIVE",
          "skA": "e",
          "skB": "a",
          "type": "type"
        },
        {
          "content": "FOUR",
          "skA": "b",
          "skB": "a",
          "type": "type"
        },
        {
          "content": "THREE",
          "skA": "a",
          "skB": "c",
          "type": "type"
        },
        {
          "content": "ONE",
          "skA": "a",
          "skB": "b",
          "type": "type"
        },
        {
          "content": "TWO",
          "skA": "a",
          "skB": "a",
          "type": "type"
        },
        {
          "content": "SIX",
          "skA": "a",
          "skB": "1",
          "type": "type"
        }
      ]
    }
  }
}

 

 

각 필드의 방향이 다를 경우엔 어떻게 해야 하는진 모르겠다..

ex) skA 오름차순, skB 내림차순

반응형

'[AWS]' 카테고리의 다른 글

[AWS] 예산 설정 (AWS budget limit)  (0) 2022.07.10
[AWS] AWS SUMMIT KOREA 행사  (0) 2022.05.10
[RDS] AWS RDS 인스턴스가 없는데 과금이..?  (0) 2022.02.13
서버 vs 서버리스  (0) 2022.02.11
Amplify 명령어 모음  (0) 2022.02.10