절차적 사고란 프로그래밍을 작성하는 논리적인 사고를 말하는 것입니다.
위 그림과 같이 COLOR가 빨강이면서 SIZE가 10인 것을 찾으면 HELLO를 출력한다고 해봅시다.
이를 절차적인 언어로 말해본다면,
"DATA라는 변수에서 1부터 10까지 반복하면서 COLOR가 '빨강'이면서 SIZE가 '10'인 것을 찾으면 'HELLO'를 출력해 줘."
라고 할 수 있을 겁니다.
이를 SQL로 작성한다고 생각해봅시다.
조금 그림이 잘못되었지만, 개념을 잡으려는 것이니까 사소한 거는 참고 넘어가 봅시다.
"왼쪽 집합과 오른쪽 집합의 교집합으로 빨간색이면서 10인 것을 찾아줘."
라고 하면 됩니다.
왼쪽과 오른쪽에 빨강이고 10인 것을 찾는 것에 촛점을 맞춰서 생각해보시면 좀 차이점이 있다고 느끼실 겁니다.
코딩을 한다는 건 절차적인 사고를 한다는 것이고, SQL(Structure Query Language)은 우리말로 하면 구조적 질의언어라고 합니다.
우리말이 더 어렵지 않나요?
그렇다면 쉽게 이렇게 생각해보세요. “똑똑하게 물어보면 똑똑한 답을 준다” 라고 생각하시면 됩니다.
왜 이렇게 생각하냐면 절차적인 사고나 코딩은 80점 90점 짜리가 있을 수 있습니다.
하지만, SQL을 제대로 만들었다면 맞거나 틀리거나 즉, 100점이거나 0점일 겁니다.
말하는 의미가 이해가 되시면 좋고 이해가 안 되셔도 상관없습니다.
가볍게 쿼리는 집합적으로 생각해야한다라고만 생각하고 넘어가시면 됩니다.
나중에 자연스럽게 이해가 되실 겁니다.