MySQL (3) 썸네일형 리스트형 [MySQL] SQL_CALC_FOUND_ROWS와 FOUND_ROWS() 게시판 서비스를 만들 때, 페이징 기능은 거의 필수적이라고 볼 수 있습니다.기능을 구현하기 위해서는 전체 페이지 수가 필요합니다.SELECT COUNT(*) FROM post;전체 페이지를 구하는 일반적인 쿼리는 다음처럼 작성할 수 있습니다.하지만, 게시글도 조회해야 하기 때문에 쿼리를 두 번 사용해야 한다는 문제점이 있습니다.이번 글은 이러한 문제점을 개선하기 위한 글입니다.📃 SQL_CALC_FOUND_ROW쿼리에 LIMIT 옵션을 주면 그 수만큼 레코드를 검색하고 종료합니다.하지만 SQL_CALC_FOUND_ROW라는 힌트를 주게 되면,조건에 부합하는 레코드 검색이 끝나더라도 끝까지 검색을 수행합니다.SELECT SQL_CALC_FOUND_ROWS, * FROM post LIMIT 5 OFFSET.. [서점 프로젝트] 줄거리 설명 컬럼의 자료형 고민 도서 정보를 관리하는 테이블을 만들다가 고민이 생겼습니다.책의 줄거리를 설명하는 컬럼은 그 수가 1000자가 넘어가기도 합니다.찾아보니까 표현할 수 있는 방법이 VARCHAR뿐만 아니라 TEXT도 있었습니다."왜 VARCHAR로도 표현이 가능한데 TEXT가 있을까?"최대 열 사이즈공식 문서에서는 MySQL 테이블은 65535 바이트까지 행 크기를 제한한다고 나와있습니다.큰 크기의 varchar 자료형을 남발하다보면 이 제한에 금방 도달하게 됩니다.그렇다면 text 타입으로 선언하면 어떨까요?text 타입을 여러 번 선언해도 에러가 발생하지 않습니다.이 객체는 Large Object라는 별도의 영역에 저장되고 행에는 주소값만 포함되기 때문입니다. 메모리 버퍼MySQL 엔진은 메모리 포인터를 이용해서 데이터.. [SQL] Time Zone 설정하기 진행하고 있는 미니 프로젝트에서 데이터베이스로부터 읽어온 시간이 다르게 표기되었습니다.데이터베이스에서 제공하는 날짜 타입은 무척 편리하다고만 생각했는데,해결하지 않으면 의도와 다른 동작을 하는 서비스가 될 가능성이 높습니다.어떻게 해결하면 좋을지 미리 작성해두어서 추후에 생길 문제를 예방하고자 합니다.⏳ MariaDB 시간대MariaDB는 다양한 시간대 설정을 가지고 있습니다.SELECT @@global.time_zone, @@session.time_zone, @@system_time_zone;@@global.time_zone@@session.time_zone@@system_time_zoneSYSTEMSYSTEMUTCglobal.time_zone: 현재 서버에서 사용하는 시간대입니다.session.tim.. 이전 1 다음