스팀 데이터를 더 간편하게 뽑아보자


🔗스팀 데이터를 뽑아보자
🔗SQL문이 뭔지 알아보자

SQL과 SQL DB


위의 링크에서도 설명해놨지만
SQL은 프로그래밍으로 질문하는 것을 사람도
알기 쉽도록 만든 언어입니다

SELECT WHERE 이런식으로 딱 보면 알 수 있는 단어들을
사용하지요

그럼 누구한테 질문할까요
이건 데이터베이스(DB)라고 누군가 정리해둔 정보창고
있어야만 거기에 질문할 수 있습니다
그런데 그걸 스팀잇 증인중 한명(@arcange)이 블록체인에서
데이터를 뽑아서 창고에 정리해둔 것입니다

그래서 우리는 단순히 SQL 프로그램질문만 준비하면
되는 것입니다.
그중에서 SQL 프로그램은 질문을 쉽게 하도록
도와주는 프로그램입니다.
엑셀은 사실 사무용 문서편집프로그램이지
질문 프로그램이 아니죠
그래서 이번 포스팅엔 한번만 설정해놓으면
그 후엔 질문들을 간편하게 날릴 수 있는
전용프로그램을 설명해보겠습니다

SQL 프로그램 사용법


https://www.heidisql.com/download.php

여기서 하나 받아봅니다
설치버전이랑 포터블(무설치) 버전을 제공하는데
편한걸로 선택해서 사용합시다

그리고 프로그램을 기동해보면 이렇게 나옵니다

여기서 신규를 클릭합니다


그럼 요렇게 뜨는데
유형을 마소 SQL Server (TCP/IP) 으로 하고

호스트명 : sql.steemsql.com
사용자 : steemit
암호 : steemit

를 입력한 후 열기를 클릭합니다
그럼 저장 어쩌구 뜨는데 저장합니다

이렇게 저장해놓으면
앞으론 저 정보창고에 접속하기 위해
이런 작업을 안해도 됩니다 +_+

그후 요렇게 뜨는데

쿼리(질문) 탭을 클릭합니다

그다음 거기에 SQL 명령어
즉, 질문을 넣습니다
예를들면 이런거 말이죠

SELECT 
    author, 
    COUNT(*) AS vote
FROM
    TxVotes(NOLOCK)
WHERE
    voter = '아이디' and
      timestamp > DATEADD(day, -1, GETDATE())
GROUP BY
    author
ORDER BY
    COUNT(*) DESC


그냥 붙여넣으면 됩니다
새부적으로 고칠 내용은

    voter = '아이디' and
      timestamp > DATEADD(day, -1, GETDATE())

에서 '아이디'랑 -1 숫자뿐입니다
아이디는 정보를 보고 싶은 아이디
-1은 하루전부터 지금까지의 데이터를 의미하죠
-2 넣으면 이틀전부터입니다


그리고 위의 플레이 버튼을 누르면

바로 아래에 자료가 나옵니다


위의 질문내용은 하루동안 특정아이디가
보팅한 글쓴이들을 보여주는 것입니다

표를 보시면 각 글쓴이들이 세로로 쫙 정리되어있죠
2x64 는 표의 가로세로를 뜻합니다
세로가 64니 64명이겠죠?

즉 하루동안 64명한테 투표했다는 정보를 받은겁니다

내일도 이 정보를 보고 싶으면
위의 것을 복사해서 붙여넣으면 되겠지만
이거 귀찮죠

그래서 그런 귀차니스트를 위한 편리한 장치가 있습니다
스니펫이라는 것으로.. 작은 조각이란 의미가 있습니다
메모라고 생각합시다

요렇게 파일>스니펫으로 저장


창을 띄우고 알기 쉬운 이름을 정해서 저장합니다


그리고 질문창에 가서 오른쪽의 스니펫 폴더를 열면
자신이 저장한 스니펫이 있습니다
더블클릭하면 자신의 저장한 스니펫이 고대로
창에 붙여집니다

지금까지 수고하셨습니다
이제는 새로할때 저런 작업을 할 필요가 없어졌습니다

프로그램을 실행하고

이전에 저장한 정보창고를 엽니다

그리고
곧바로 질문창으로 가서

스니펫에 저장해둔 것 중 원하는 질문을 더블클릭해서


질문을 보내기만 하면 답이 나오는 겁니다

그럼 질문들은 어떻게 할까요?
스스로 공부해도 좋겠지만
개복치 다 죽는 꼴을 못보니
일단 쉬운 것들을 제가 아래에 알려드리겠습니다

하루동안 특정태그에 올라온 글 수


하루동안 kr 태그에 올라온 글 수

SELECT
    COUNT(*)
FROM
    TxComments
WHERE
      timestamp >= DATEADD(day, -1, GETDATE())
AND title <> ''
    AND LEFT(body,2) <> '@@' 
    and json_metadata LIKE '%특정태그%'

저기서 마지막부분의 %특정태그%
%kr%로 바꿔 보겠습니다


2309 개가 올라왔군요

and json_metadata LIKE '%kr%'
에서 kr을 kr-newbie로 바꾸니 336개가 떴습니다
원하시는 태그로 바꿔보세요

하루동안 누구에게 몇%로 투표했는가

SELECT 
    author,
    SUM(weight) AS weights
FROM
    TxVotes(NOLOCK)
WHERE
    voter = '아이디' and
     timestamp > DATEADD(day, -1, GETDATE())
GROUP BY
    author
ORDER BY
    SUM(weight) DESC

하루동안 얼마만큼의 파워로 누구한테 투표했는지
알 수 있습니다
물론 표의 세로수는 하루동안 자신이 투표한 수입니다

H2
H3
H4
3 columns
2 columns
1 column
Join the conversation now
Logo
Center