주로 게시글 번호를 붙일 때 사용했었지만, 매번 쓸때마다 검색하고 찾아보고하여 기록하게 되었다.
<Mysql>
SELECT @RNUM := @RNUM+1 AS NO, a.*
FROM (SELECT *
FROM company
ORDER BY seq desc) a
, (SELECT @RNUM := 0) b;
라고 쓴다. 아래처럼 결과가 출력된다.
정확히 무슨 뜻인지는 잘모르겠지만, (SELECT @RNUM := 0) 해당 줄이 없으면 NULL로 출력된다.
나는 게시글 번호를 붙여야하기때문에 페이징 처리도 해야한다.
하지만 맨위의 방식으로 하게 되면, 1페이지나 2페이지 모두 글 번호가 동일하게 붙게된다,
그래서 LIMIT하기 전, 글 번호를 붙이고 LIMIT를 통해 글을 분리하여 조회하면 정상 출력된다.
SELECT a.*
FROM (SELECT @RNUM := @RNUM+1 as no
, company.seq
, company.company_name
, company.ceo
, company.ceo_phone
, company.manager
FROM company
, (SELECT @RNUM := 0) b) a
LIMIT 3, 8;
하나하나 자세한 의미는 모르겠지만, 원하는 것을 어떻게 출력해야할지는 알았다. 자세한건 천천히 공부하여 덧붙여야겠다.
그리고 현재 PHPMYADMIN을 쓰고 있는데 sqlDeveloper과는 다르게 많이 불편하다. 오라클 쓸때는 쿼리를 쭉 이것저것 늘여쓰고 여러문장을 쓰고 출력하며 확인했지만, php에서는 아직까지 그렇게하는 법을 몰라 매번 한 쿼리쓰고 지웠다가 새로 쓰고 있다. 얼른 그것도 방법 찾아봐야겠다.
'PHP' 카테고리의 다른 글
파일다운로드 - 오류 수정 (0) | 2018.11.22 |
---|---|
파일 다운로드(header) (1) | 2018.11.21 |
파일 다운로드 (0) | 2018.11.20 |
파일 업로드 (0) | 2018.11.20 |
form과 post 방식 (0) | 2018.11.17 |