SQL 문이 뭔지 알아보자

in #kr7 years ago (edited)

SQL 용어


이전에 우린 스팀의 데이터를 뽑는데
SQL문이라는 것을 썼다
스팀 데이터를 뽑아보자

당시 주요 내용은 그런게 아니기도 하고
글이 길어지는 와중이어서 갑자기
SQL문을 먹이로 주면 개복치들이 다량으로 폐사할
위험이 있었다

그래서 걍 수리수리 마수리 라는 주문으로 떼웠는데
이젠 뭐 한번 접하기도 했으니 항체정돈 생겼을 것이다

게다가 사실 이건 프로그래밍 언어중에서
난이도 상중하똥으로 분류하면
똥에 속한다

그정도로 쉽다

좀더 심화로 들어가면 머리아프긴하지만
입문은 개나소나 개복치나 다할 수 있다

일단 뜻부터 보자

SQL (Structured Query Language)
구조화된 질문어들

이거보고 도망갈 생각은 하지말자
그냥 허세로 적어놓은거다
원래 프로그래밍 용어들이 걍 있어보일려는 것들이 많다

SQL 유래


질문을 할때

선생님은.. 꺄르르!! 아 부끄! 이거 물어도 되나?
첫키스 푸훕 언제 하셨어요~~?

이런 식으로 하면 컴퓨터가

이런 시선으로 본후
'다시 씨부려 주십시요'

라고 할 것이다

한데 컴퓨터가 알아듣는 언어인 0101010 이런
기계어로 우리가 질문할 수도 없는 노릇이다

그래서 엔지니어들은 열심히 번역기(컴파일러)를 만들었다
그렇지만 역시 인간의 언어를 그대로 쓰긴 힘들고
쓰잘데기 없는건 모조리 뺀후
핵심단어와 문법을 정리해서
대화형 프로그래밍어를 만들었다

그중 하나가 바로 SQL 이다
SQL은 각종 정보가 모인 창고.. 데이터베이스에
질문을 하고 정보를 얻어오는 목적의 언어다
위의 예제에 적용한다면 다음과 같이 된다

대답하라 선생 첫키스 날짜시간장소

알아듣기 좋지 않은가?
저기서 구조적으로 정해진 것은
'대답하라' 라는 질의어와 이후 구조적 배치다

사실 이런건 우리 실생활에서도 비슷한게 있다

고갱님 죄송하지만 환불은 불가능하십니다

뭐 이런거
보통 하나의 업체에선 교육할때 통일된 대응언어가 있다
세상엔 진상이 가득해서
'왜 저사람은 고객이고 난 손님이지?'
라는 사람도 있다
'손님.. 고객이랑 손님은 같은말이십니다'
이랬다가는 '지금 니가 날 가르쳐?' 라면서 진상전쟁이 발발한다

컴터는 진상전쟁은 일으키지 않지만
대신 조용히 에러를 뿜는다
'ERROR - 손님이란 단어가 뭔지 모르겠습니다'

쉽게 말하면 규칙이 빡빡한 언어..
군대의 다나까 같은거라고 생각하면 된다

예제


여기서 어렵게 가면 다 도망갈테니
매우매우 기본 세가지만 하겠다

사실 그거면 왠만한것들 다 뽑아낼수 있다

SELECT, FROM, WHERE

이거 세개다

SELECT는 ~~대해 묻는다 라고 보면되고
FROM은 ~~에게 라고
WHERE은 구체적으로 라는 뜻이다

처음에 했던 예제로 SQL문을 만들어보면

SELECT 키스날짜 FROM 선생 WHERE 키스종류=첫키스

이렇게 된다

선생이라는 정보창고주체로부터 키스날짜를 빼내온다
근데 이대로 빼내오면 키스날짜가 감당할 수 없을정도로
나온다.. 그러므로 WHERE 로 정보범위를 좁힌다
키스한 날짜는 첫키스 날짜 한정으로..

자 그럼..
마지막으로 이전에 블록체인에서 뽑았던 정보를
SQL문으로 다시 봐보자 이제 눈꼽만큼은 달라보일 것이다
단지 몇가지 기교가 들어갔으니 그것을 제거하고
보여주겠다. 그래도 결과는 나온다

SELECT 
    author
FROM
    TxVotes(NOLOCK)
WHERE
    voter = 'twinbraid' 

글쓴이가 누군지 빼내온다
TxVotes(NOLOCK) 라는 정보통한테..
이대로하면 모든 글쓴이를 다 뽑아오니까
voter(투표자) 를 한정한다
twinbraid 라는 멋진 녀석이 투표한 것들만

그래서 결국 twinbraid가 투표한 사람들이 누군지
주루룩 나오는 것이다

그럼 여기서 몇가지만 응용하면
당연히 다른 정보다 줄줄 뽑아낼 수 있다

다른건 다 같게 하고

WHERE weight = 10000

이러면 투표파워를 100.00%로 투표해줬던 사람만
나온다. (소숫점이 귀찮은지 스팀잇에선
투표파워가 70.38% 이러면 7038로 표현한다)

지금까지 보았듯이
SQL은 여러분을 해치지 않는다
겁먹지 말고 해보자

Sort:  

DML 만 보면 참 쉬운데 ...ㅠ

어차피 스팀 데이터만 뽑을거라
이이상 알려주면

다들 자러가버릴겁니다

와우.. 신기하네요. 링크된 스팀데이타 들어가서 첨부터 다시 확인했는데 참 엑셀도 제가좀 안다고 생각했는데 기능이 어마어마 하네요. 좋은 정보 감사합니다~~

저도 엑셀에 대해서 놀랐습니다
메모장 확장판이라고 생각했는데..-_-a

전 계산기 확장판이요 ㅋㅋ

언제나 쉽고 재밌는 설명이네요. 다음편도 기대하겠습니다.

다음편 없는데..-ㅅ-;; 저게 SQL에 대해서 아는거 다입니다 ㅠㅠ

초보코인 시리즈를 말씀드린거였어요^^;;

그렇군요 그건 다음편 있습니다 ^^;
앞으로도 잘 부탁드립니다

@twinbraid님 여기에 이런 질문 남겨서 죄송한데 "메타마스크에서 EOS 거래소 지갑으로 토큰보내기" 글 쓰실 생각 없으신가요? 저도 궁금하기도 하구요
보팅하고 갑니다.^^

감사합니다. 마침 저도 생각해보고 있었습니다
비트파인애플인지 뭔지 한번 파보도록 하겠습니다

오~ 흥미롭게 읽었어요. 잘보고 갑니다 :)

상중하똥 중에 똥이라길래.. 똥밭에서 구를 각오를 하고 뒷 글을 읽었습니다.
걱정했던 것만큼 똥밭은 아니군요. ㅎㅎ

This post has been ranked within the top 80 most undervalued posts in the second half of Jul 03. We estimate that this post is undervalued by $24.78 as compared to a scenario in which every voter had an equal say.

See the full rankings and details in The Daily Tribune: Jul 03 - Part II. You can also read about some of our methodology, data analysis and technical details in our initial post.

If you are the author and would prefer not to receive these comments, simply reply "Stop" to this comment.

Coin Marketplace

STEEM 0.18
TRX 0.13
JST 0.030
BTC 58296.60
ETH 3064.91
USDT 1.00
SBD 2.26