JSON, JSON 객체와 배열

이윤설·2023년 4월 3일
0

"SET @변수명 = '{"key" : [value]};" --> 무슨 뜻일까?

SET @json ='{ "usertbl" :
	[
		{"name":"임재범", "height":182},
        {"name":"이승기", "height":182},
        {"name":"성시경", "height":186}
    ]
}' ;

JSON

일반적으로 서버에서 클라이언트로 데이터를 보낼 때 사용하는 양식이다. 클라이언트가 사용하는 언어에 관계 없이 통일된 데이터를 주고받을 수 있도록, 일정한 패턴을 지닌 문자열을 생성해 내보내면 클라이언트는 그를 해석해 데이터를 자기만의 방식으로 온전히 저장, 표시할 수 있게 된다.

JSON 객체와 배열 1

위 코드에서 {}는 JSON 객체(object)를 나타내며, []는 JSON 배열(array)을 나타낸다.

JSON 객체는 {} 안에 key-value 쌍을 나열하여 표현한다. 이 때 key는 문자열이며, value는 문자열, 숫자, 불리언, 객체, 배열 등의 다양한 데이터 형식일 수 있다. 위 코드에서 "usertbl"은 JSON 객체의 key이며, 그 값으로 배열이 포함되어 있다.

JSON 배열은 [] 안에 값들을 나열하여 표현된다. 값은 문자열, 숫자, 불리언, 객체, 배열 등의 다양한 데이터 형식일 수 있으며, 값들은 쉼표로 구분된다. 위 코드에서는 "usertbl" 객체의 값으로 세 개의 사용자 객체가 배열로 포함되어 있다.

이 코드는 단순히 변수에 문자열 값을 할당하는 것이다. 이 문자열은 구조화된 형식으로 데이터를 표현하는 방법인 JSON 형식이다.

이 변수는 이후의 SQL 문에서 사용될 수 있으며, 예를 들어 JSON에서 데이터를 추출하거나 데이터를 테이블에 삽입하는 데 사용될 수 있다.

JSON 객체와 배열 2

JSON은 두 가지 기본적인 데이터 타입인 객체(object)와 배열(array)로 구성된다.

JSON 객체는 중괄호 {}로 표현되며, 다양한 속성(key-value pair)들을 포함한다. 객체의 속성은 속성 이름(key)과 그에 해당하는 값(value)으로 구성되며, key와 value는 : 으로 구분된다. 여러 속성들은 쉼표 ,로 구분됩니다.

예시)

{
   "name": "John",
   "age": 30,
   "isStudent": false,
   "address": {
      "street": "123 Main St.",
      "city": "New York"
   }
}

위 예시에서는 name, age, isStudent, address라는 속성이 있으며, 각각의 속성은 해당하는 값과 함께 key-value 쌍을 이루고 있다. address 속성의 값은 또 다른 JSON 객체를 포함하고 있다.

JSON 배열은 대괄호 []로 표현되며, 순서가 있는 값들의 리스트로 구성된다. 배열의 값들은 쉼표 ,로 구분된다.

예시)

["apple","banana", "orange"]

위 예시에서는 apple, banana, orange라는 값이 배열 안에 포함되어 있다. JSON 배열은 객체와 마찬가지로 다른 데이터 타입을 포함할 수 있다. 예를 들어, 배열 안에 객체를 포함할 수도 있다.

JSON 객체와 배열 3

JSON 배열은 JSON 객체의 값으로 사용될 수 있다. 즉, JSON 배열은 JSON 객체 안에 포함될 수 있으며, JSON 객체의 속성값으로 사용될 수 있다.
예를 들어, 다음과 같은 JSON 객체가 있다고 가정해보자.

{
   "name": "John",
   "age": 30,
   "fruits": [
      "apple",
      "banana",
      "orange"
   ]
}

위 예시에서는 fruits 속성이 JSON 배열로 구성되어 있다. 이렇게 JSON 배열을 JSON 객체의 속성값으로 사용함으로써, 여러 가지 데이터를 구조화하고 효율적으로 전달할 수 있다.

반대로, JSON 배열 안에는 JSON 객체를 포함시킬 수도 있다. 예를 들어, 다음과 같은 JSON 배열이 있다고 가정해보자.

[{"name": "John","age": 30},{"name": "Mary","age": 25}]

위 예시에서는 배열 안에 두 개의 JSON 객체가 포함되어 있다. 이렇게 JSON 객체를 JSON 배열 안에 포함시킴으로써, 여러 개의 데이터를 순서대로 나열할 수 있다.

따라서, JSON 객체와 배열은 서로 다른 개념이지만, 이 둘을 적절히 조합하여 데이터를 구조화하고 전달함으로써, 다양한 목적으로 사용할 수 있다.

보너스) 두 개의 테이블이 있을 때, 한 테이블에서 fK를 연결할 때 다른 테이블의 CHAR 길이를 동일하게 해야함.

profile
화려한 외면이 아닌 단단한 내면

0개의 댓글