자신감뿅뿅
226
2021-04-23 13:59:19
2
118

mysql @rownum 을 mybatis 에서 사용시 처음값이 0 이 나옵니다. 왜이럴까요?


게시물 리스트를 가지고오는데


select @rownum:=@rownum+1 num, b.*

from

(select tag_name, count(tag_name) count

from(select tag_name, tag_sdate

from tag_count

where tag_sdate between '2021-04-23' and '2021-04-23') a

group by tag_name

order by 2 desc) b

where (@rownum:=0)=0

limit 0, 5;


위쿼리처럼 rownum이필요해서 칼럼을 추가해줬습니다.


워크벤치에서 쿼리 조회시에는 1부터 5까지 잘나오는데


mybatis에서 위 쿼리문을 사용할시 처음 리스트를 불러올때 rownum이 모두 0값이 나옵니다.


그후 창을 새로고침하고 다시 리스트를 불러오면 1~5가 출력되구요...


왜처음 호출할때는 rownum값이 다 0이 나오는걸까요?

0
  • 답변 2

  • Dierslair
    4k
    2021-04-23 14:09:42

    rownum 초기화를 from 절에서 해주세요


    select @rownum:=@rownum+1 num, b.*
    
    from		(select @rownum := 0) tmp,
    
    		(select tag_name, count(tag_name) count
    
    		from(select tag_name, tag_sdate
    
    			from tag_count
    
    			where tag_sdate between '2021-04-23' and '2021-04-23') a
    
    		group by tag_name
    
    		order by 2 desc) b
    
    limit 0, 5;


  • 자신감뿅뿅
    226
    2021-04-30 12:17:57

    John Suhr

    답변감사드립니다. 해결했습니다 !

  • 로그인을 하시면 답변을 등록할 수 있습니다.