목록분류 전체보기 (129)
YS's develop story
MySQL ) 변수에 값을 할당하여 값마다 다르게 정렬하는 쿼리 짜기. 아래와 같이 Restaurant라는 테이블이 있습니다. 또한 아래와 같이 Review라는 테이블이 있습니다. 마지막으로 아래와 같은 Area라는 테이블도 있습니다. 아래와 같은 쿼리를 작성하게 되면 식당 이름과 reviewCount, distance를 보여주게 됩니다. select restaurantName,ifnull(reviewCount, 0) reviewCount, round(6371 * acos(cos(radians(areaLatitude)) * cos(radians(restaurantLatitude)) * cos(radians(restaurantLongitude) - radians(areaLongitude)) + sin(ra..
MySQL ) left outer join 활용, ifnull 활용 아래와 같이 Restaurant라는 테이블이 있습니다. 또한 아래와 같이 Review라는 테이블이 있습니다. 아래와 같은 쿼리를 실행하면 각 식당의 리뷰수가 몇 개 인지 출력할 수 있습니다. select restaurantName,reviewCount from Restaurant inner join (select restaurantId, count(*) as reviewCount from Review group by restaurantId) ReviewCount on Restaurant.restaurantId = ReviewCount.restaurantId 리뷰수 가 0개인 식당도 같이 출력하게 하려면 null 값도 표시 하는 left ..
MySQL ) 기존 칼럼에서 값을 +1 해주기 쿼리가 실행될 때마다 특정 칼럼의 값을 +1 증가시키려면 어떻게 해야 할까요? 조회수와 같은 요소는 이런 요소를 활용해야 할 것 같습니다. Cafe라는 테이블에 cafeStar라는 칼럼을 주목해 주세요, 아래와 같은 쿼리를 2번 실행하면... update Cafe set cafeStar =Cafe.cafeStar + 1 where cafeId = 1; 해당 값에서 +2가 추가된 것을 볼 수 있습니다. 이를 조회 수 같은 칼럼에 활용하면 편할 것 같습니다 :)
Query String, 쿼리 스트링 활용하기 '건대'라는 글자가 들어가는 특정 카페를 찾기 위해선 어떻게 해야 할까요? 아래와 같이 쿼리스트링을 활용하면 됩니다. cafeRoute.js cafecontroller.js 사용자가 쿼리 스트링 값을 입력하지 않고 /cafe와 같이 요청을 하게 되면 모든 카페를 출력하고, /cafe?cafeName=건대 와 같이 요청을 하게 되면 cafeName에 값이 들어가게 되어 그 카페만을 출력하게 됩니다. cafeDao.js 쿼리 스트링 처리 부분 쿼리입니다. 여기서 중요한 것은 쿼리를 짤 때 Like concat ('%',?,'%')을 사용해야 한다는 것입니다.. 처음에 %?%이런식으로 쿼리를 짰는데 쿼리를 인식을 못했습니다.. Postman에서 실행 결과를 확인해..
RP2기 API와 REST API란 무엇인가..? 수업내용 정리 클라이언트와 서버가 Request, Response를 통해 주고받는 데이터 덩어리를 Packet라고 합니다. Packet을 소포 상자라고 생각해 봅시다. 소포 상자에는 label이 붙어 있을 것인데 이 label를 Header라고 부릅니다. Header에는 Meta data가 들어 있습니다. Meta data란... 메타데이터는 데이터에 대한 데이터이다. 이렇게 흔히들 간단히 정의하지만 엄격하게는 "어떤 목적을 가지고 만들어진 데이터"라고도 정의한다. 가령 도서관에서 사용하는 서지 기술용으로 만든 것이 그 대표적인 예이다. 소포 상자 안에는 진짜 필요한 데이터들이 들어있을 것인데 이것을 Body라고 합니다. HTTP 프로토콜을 이용해서 패킷..
DataGrip 사용 중 발생 한 에러.... Server returns invalid timezone. Need to set 'serverTimezone' property. 해결법은 엄청 간단합니다. 아래를 참고해주세요. Advanced - Name를 클릭 후 정렬 후 - serverTimeZone을 Asia/Seoul로 설정 Test Connection확인 후 실행하면 에러가 해결됩니다!!
AWS RDS 사용자 추가하기 https://aws.amazon.com/ko/premiumsupport/knowledge-center/duplicate-master-user-mysql/ RDS MySQL에서 마스터 사용자 권한을 가진 다른 사용자 생성 MySQL을 실행하는 RDS DB 인스턴스에는 마스터 사용자가 한 명만 있을 수 있지만 마스터 사용자와 동일한 권한을 가진 새 사용자를 생성할 수 있습니다. 마스터 권한이 있는 새 사용자를 생성하려 aws.amazon.com 새로운 사용자 생성 mysql> CREATE USER 'new_master_user'@'%' IDENTIFIED BY 'password'; (new_master_user 및 password를 사용자 이름과 암호로 변경해야 합니다.) 사..
AWS EC2로 node.js 배포 하기 https://docs.aws.amazon.com/ko_kr/sdk-for-javascript/v2/developer-guide/setting-up-node-on-ec2-instance.html 자습서: Amazon EC2 인스턴스에서 Node.js 설정 - 용 AWS SDKJavaScript 노드 설치는 현재 EC2 세션에만 적용됩니다. EC2 인스턴스가 사라지면 노드를 다시 설치해야 합니다. 다음 단원에 설명된 대로 유지하려는 구성이 있는 경우 대안은 EC2 인스턴스의 AMI를 만드는 것 docs.aws.amazon.com 위의 링크의 절차에 따라 EC2에 node.js를 설치해 줍시다. 그리고 npm install를 통해 필요한 모듈들을 다운로드하여 줍니다...
AWS EC2의 시간 변경하기 (TimeZone 변경하기) root 계정으로 변경한 뒤, 진행합니다. root 계정으로 변경 sudo su - root 아래의 명령을 차래로 진행합니다. rm /etc/localtime ln -s /usr/share/zoneinfo/Asia/Seoul /etc/localtime date 명령어를 통해 현재 시간이 제대로 설정된 것을 확인할 수 있습니다.
포트와 프로토콜 수업 내용 간단 정리 우리는 현실세계에서 건물의 위치를 서울시 000구 000동 이런 식으로 주소로 나타냅니다. 인터넷에서는 이런 주소 대신 ip주소로 12.5.3.2.3 이런 식으로 나타내는데 이는 알아보기 쉽지 않고 직관적이지 않기 때문에 사람이 보기 쉽게 하기 위해 도메인이라는 것을 사용합니다. 과제 중에 EC2의 ip주소를 도메인을 구입해서 연결하곤 했었습니다. (RP2기 2주 차과제 - part 3) AWS EC2 Ubuntu서버와 가비아 도메인 연결해 보기 (직접 구매한 도메인 연결하기) (RP2기 2주차과제 - part 3) AWS EC2 Ubuntu서버와 가비아 도메인 연결해 보기 (직접 구매한 도메인 연결 세 번째 과제 1. AWS EC2 Ubuntu 서버에 가비아 도메인..