개발 일지🌘

    [MariaDB] 랭크 순위 함수 대체하기 (10.1 이하 버전)

    MariaDB 10.2 이상 버전은 RANK() 함수를 이용할 수 있습니다. 버전은 select version() 으로 확인 10.1 이하 버전에서 랭크 함수 대체법 SELECT a.*, (case @chk when a.userId then @rownum:=@rownum+1 ELSE @rownum:=1 END) rank, (@chk:=a.userId) chk FROM test a, (SELECT @chk:='' ,@rownum:=0 FROM DUAL) b WHERE DATE_FORMAT(a.datetime,'%Y%m%d') BETWEEN 20230101 AND 20230331 GROUP BY date,userId,datetime ORDER BY date,userId,datetime chk는 순위를 매길 ..

    [MariaDB] 달력 날짜 데이터 insert 하기

    [MariaDB] 달력 날짜 데이터 insert 하기

    먼저 임의의 테이블을 생성합니다 (몇 년치의 날짜 데이터를 넣기 위한 테이블) create table temp (n int); // 컬럼 하나의 테이블 생성 insert into temp values (1); // 숫자 1 insert insert into temp select * from temp; // 테이블의 데이터를 반복 insert 하여 13번 정도 반복하면 약 3650의 행이 생김 (10년치) 날짜 데이터를 넣을 테이블을 생성하고 insert insert into calendar select date_format(date, '%Y%m%d'), date_format(d, '%Y-%m-%d'), date_format(d, '%a') // date 데이터의 포맷 형식을 지정해줍니다 // %a는 요일..