Backend/Database & SQL 2

중심 좌표로 부터 거리 구하기 / 가까운 거리 순으로 정렬

지도에 마커를 표시할 때 현재 위치로부터의 거리나 가장 가까운 데이터 10개만 표시하고자 할 경우를 알아보았다. SELECT (6371 * acos(cos(CAST(TARGET_LAT AS FLOAT) * 3.141592653589793 / 180.0) * cos(CENTER_LAT * 3.141592653589793 / 180.0) * cos((CENTER_LON * 3.141592653589793 / 180.0) - (CAST(TARGET_LON AS FLOAT) * 3.141592653589793 / 180.0)) + sin(CAST(TARGET_LAT AS FLOAT) * 3.141592653589793 / 180.0) * sin(CENTER_LAT * 3.141592653589793 / 180...

[SQL] 게시판 다음글 / 이전글 SQL문

게시판을 만들 때 보면 다음 글과 이전 글에 갈 수 있게 만들어야 되는데 데이터베이스에서 게시판 데이터를 꺼내올 때 게시판 테이블에 하나의 게시판 데이터가 있고 게시글이 차례대로 있으면 아래와 같이 SELECT 문을 써주면 된다. //- 다음 글 - SELECT * FROM '게시판 테이블' WHERE '게시글 번호' = '현재 게시글 번호 + 1'; //- 이전 글 - SELECT * FROM '게시판 테이블' WHERE '게시글 번호' = '현재 게시글 번호 - 1'; 하지만 게시판 테이블 안에 여러 게시판의 데이터가 관리되면 게시판 번호가 똑같지만 글번호 차이가 많이 나게 된다. 그리고 게시판이라는 것이 삭제가 돼서 번호와 번호 사이의 간격이 일정하지 않을 수도 있다. 이럴 때는 아래 SELECT ..