programing

Maria DB 데이터베이스의 열에서 JSON Value를 추출하는 구문은 무엇입니까?

luckcodes 2022. 10. 29. 16:05

Maria DB 데이터베이스의 열에서 JSON Value를 추출하는 구문은 무엇입니까?

MariaDB 10.2.8을 사용하고 있습니다.JSON_EXTRACT() 함수를 사용하여 아래 JSON의 키 "2"에서 값을 추출하는 데 필요한 구문은 무엇입니까?

{
  "1":"Windows 10",
  "2":"Windows 8",
  "3":"Windows 7",
  "4":"MAC OS"
 }

저도 이 주제에 대한 설명서가 상당히 제한적이라는 것을 알았습니다.또한 예시는 어레이를 탐색하는 방법만 보여주는 것 같습니다.개체는 탐색하지 않습니다.다른 데이터베이스에서도 json에 캐스트할 필요가 없고 스트링으로 직접 조작할 필요가 있다는 점이 매우 혼란스러웠습니다.

예:

{
  "myKeyA": "Foo",
  "myKeyB": [
    {
      "arrayElementA": "Bar"
    },
    {
      "arrayElementB": "FooBar"
    }
  ]
}

다음과 같이 쿼리할 수 있습니다.

  • SELECT JSON_EXTRACT('...', '$.myKeyA');돌아온다"Foo"
  • SELECT JSON_EXTRACT('...', '$.myKeyB');돌아온다[{"arrayElementA": "Bar"}, {"arrayElementB": "FooBar"}]
  • SELECT JSON_EXTRACT('...', '$.myKeyB[1].arrayElementB');돌아온다"FooBar"

어디서?...값을 취득하는 json 입력이 됩니다.

JSON_EXTRACT(@json, '$[1]')를 선택합니다.

여기서 $는 JSON Document Tree를 의미합니다.

MySQL 참조에는 더 나은 예가 있습니다.그러나 MariaDB는 네이티브 바이너리 JSON이 아닌 JSON과 같은 텍스트 기반 형식이므로 MySQL에서 MariaDB로 코드를 붙여넣고 실행할 때는 주의하십시오.https://dev.mysql.com/doc/refman/8.0/en/json.html

언급URL : https://stackoverflow.com/questions/48529545/what-is-the-syntax-to-extract-json-value-from-column-in-maria-db-database