목록분류 전체보기 (66)
꾸준하고 즐겁게
사람은 눈으로 보는 게 최고라고 배웠다. 스크린샷을 많이 찍어왔다. 일단 이 페이지에 들어가서 시작한다. 이름 나오는 것 정도는 지우기 번거로우니 그냥 두겠다. 스크린샷이 마우스를 포함해서 찍히지 않는다는 걸 알게 됐다. 오른쪽 구석에 create app을 눌러준다. 그러면 이런 화면이 나온다. 거기서 python flask API를 눌러준다. 앱 이름을 지어준다. 셀렉트 버튼 누르면 가장 밑에 add provider (아마도...) 를 눌러준다. 프로바이더 이름을 쓰고, create role 버튼을 누른다. 작성자는 이 과정을 어제만 20번쯤 했다보니, 로그인 과정이 안나와있다. 보통은 aws에 로그인을 해야한다. 저 화면에 들어가면, 헷갈리지 않게 스택 이름부터 지어준다. 안짓고 넘어가면 다음 과정에..
이미지는 C++이다. 하지만 C에서도 해당된다. 코드는 좀 멍청해보여도 이해바란다. 회로를 처음 공부해봐서 이것저것 건드리다보니 저런 꼴이 됐다. 이게 대체 뭔소리인가 했는데, required가 필수라는 뜻이였다. 뭔가 필수적인 걸 까먹었다는 의미인 듯 했다. 이걸로 멍청하게 20분을 디버깅했는데, 결국은 if문의 bool 연산자를 잘못 쓴 것이였다. 결론 : C언어에서 이 글 제목과 같은 Error가 뜬다면, bool 연산자를 확인해라...
MySQL의 between select * from books where released_year between 2004 and 2015; 단어를 해석하면 해석이 될 정도로 간단하니, 간단한 설명만 덧붙이겠다. books라는 테이블이 있다. 전체 테이블을 다 보려고 하는데, 조건이 있다. released_year라는 컬럼에서 2004년과 2015년 사이로 표기된 자료들만 가져온다. 이때 2004년과 2015년을 포함한다.(이하, 이상) not between 위의 between에 해당되지 않는 년도의 책 데이터만 가져온다. select * from books where released_year not between 2004 and 2015;
substring 함수 파라미터로 문자열과, 시작하는 지점, 끝나는 지점을 받는다. 시작점 이후로 데이터를 전부 억세스할 경우 끝나는 점은 입력하지 않아도 된다. 파이썬에서의 인덱싱과는 약간 다르다. 파이썬에서는 첫번째 지점이 0으로 시작하는 반면, SQL에서는 1로 시작한다. 파이썬처럼 끝나는 지점 기준이 미만이 아니라서, 끝나는 지점에 +1을 해줄 필요도 없다. select substring('Hello World', 1, 4); >>> Hell replace 함수 파라미터로 문자열, 문자열에서 대체될 문자(혹은 문자열), 대체할 문자(혹은 열)을 받는다. 욕설 등을 검열할 때 사용할 수 있다 select replace('What the hell', 'hell', '***'); >>> What the..
이번에도 이전 글의 그 테이블이 맞다. 어떨 때 사용할까? 100개가 조금 넘는 데이터가 들어있는 테이블이 있다. 여기서 username에 hi라는 문자열을 포함하는 username은 어떤 게 있는지 확인하고 싶다고 가정하자. 그럴 때 사용할 수 있는 게 like다. 사용 예 select * from users where username like 'hi'; 사용하는 방법은 이렇다. 하지만 hi라는 문자열을 포함하는 username이 없다. 이렇게 사용할 경우, username 컬럼에 정말 찾는 문자열 그대로 hi가 있어야한다. hi1도 안되고, 1hi도 안된다. hi여야만 한다. 찾고자하는 문자열을 끝에서 끝까지 완벽하게 알고 있는 게 아니라면, 이럴 땐 와일드 카드를 사용하면 된다. select * f..
이전 글의 그 테이블이 맞다. MySQL의 Limit users라는 테이블에 100개가 넘는 데이터가 있다. 나는 여기서 가장 처음 나오는 5개만 보고 싶다. 그럴땐 Limit을 이용한 쿼리를 작성하면 된다. select * from users limit 5; 위의 쿼리를 실행하니, 위와 같은 결과를 볼 수 있다. 만약 가장 최근에 등록된 5명의 유저의 username만 보고 싶다면, 이전 글의 order by와 limit을 같이 사용한 쿼리를 작성하면 된다. select * from users order by created_at desc limit 5; 가장 최근에 등록된 유저의 username과 등록된 날짜를 확인할 수 있게 되었다. MySQL의 offset limit이 처음부터 몇 개까지의 데이터를..
MySQL 오름차순 정렬하기 다음과 같은 테이블에서 이름 알파벳 순으로 정렬하는 쿼리를 작성해보겠다. select * from users order by username; users라는 테이블에서 모든 컬럼의 데이터를 가져오는데, username을 기준으로 정렬하라는 의미이다. MySQL 내림차순 정렬하기 order by 컬럼명 뒤에 asc 혹은 desc를 붙일 수 있는데, asc의 경우 기본값인 오름차순 정렬이 된다. 생략해도 되는 것이다. desc를 입력할 경우, 이전과 반대로 내림차순 정렬이 된다. 당연히 이 경우엔 생략을 하면 안된다. MySQL 여러 컬럼을 기준으로 정렬하기 두 컬럼을 기준으로 정렬해야하는 경우도 있다. 그럴 때는 이런 식으로 쿼리를 작성한다. username으로 오름차순 정렬된..
블로그 올리다보니까 궁금해서 알아봤다. ezgif.com/video-to-gif Online video to GIF converter Upload your video, select the part you want to convert and instanlty create a GIF in good quality for free and without watermarks. ezgif.com 움짤을 만드는 법을 움짤로 만들어보려다가 움짤에 필요한 동영상을 찍고 움짤을 만드는 동영상을 움짤로 만들어야하는걸 자꾸 움짤에 필요한 동영상을 움짤로 만들어서 계속 같은 움짤만 나와서 이 움짤 만드는데 많이 혼란스러웠다.
Arduino는 Arduino 칩셋과 IDE가 합쳐진 것이라고 했다. IDE란 개발을 할 수 있는 기본적인 틀이 주어진다는 것이다. 이 글에서는 Arduino의 기본적인 함수 사용법에 대해 알아볼 것이다. 먼저 위 코드를 설명하는 편이 좋겠다. 저대로 함수를 실행하게 되면, 13번 핀과 연결되어있는 LED에 불이 들어오게 된다. 불이 1초동안 켜져있다가, 1초 동안 꺼져있고, 다시 1초 동안 켜졌다가, 다시 1초 동안 꺼져있기를 반복할 것이다. setup 함수는 설정에 대한 함수이다. 설정이기 때문에 한 번만 실행된다. loop는 메인 함수라고 보면 된다. loop 함수는 계속 실행되는 것이다. 함수의 이름 중간에 대문자가 들어가는 이유는, 두 개의 단어가 합쳐질 때 그렇게 쓰기로 한 것이다. 함수 작명..
컴퓨터는 CPU, Memory, I/O 로 구성되어있다. 라즈베리파이는 CPU, Memory, I/O 가 각각 서로 다른 칩으로 존재해서 한 보드 안에 있다. 우리가 쓰는 전통적인 컴퓨터는 아니다. 엄밀히 말해 MCU라기도 애매하다. Single Board Computer, 줄여서 SBC라고 한다. 귀엽게 생겼다. 아두이노는 CPU와 Memory와 I/O 를 하나로 합친 MCU(Micro Controller Unit)라는 칩셋을 말한다. 흔히 아두이노라고 불리는 이 보드는 사실 아주 정확하게 말하면, 아두이노 보드와 IDE가 합쳐진 것이다. IDE는 integrate development environment의 줄임말이다. Visual studio와 같은 것들이고, 개발 환경을 위해 이것저것 모아둔 것을..