MySQL의 정렬 개념 이해하기MySQL에서 데이터를 정렬하는 것은 매우 중요한 작업입니다. 특히 숫자 데이터를 다룰 때, 우리가 원하는 대로 정렬되지 않는 경우가 많습니다. 예를 들어, 1, 10, 11, 2와 같은 숫자들이 있을 때, 일반적인 정렬 방법을 사용하면 1, 10, 11, 2 순서로 정렬됩니다. 하지만 우리가 원하는 것은 1, 2, 10, 11 순서입니다. 이러한 문제를 해결하기 위해 MySQL의 ORDER BY 구문을 활용할 수 있습니다. 숫자 정렬의 문제점숫자 정렬에서 발생하는 문제는 데이터가 문자열로 저장될 때 발생합니다. 문자열로 저장된 숫자는 사전식 정렬을 따르기 때문에, 숫자 10이 숫자 2보다 먼저 나오는 것입니다. 이로 인해 데이터베이스에서 원하는 결과를 얻기 어려운 경우가..
SELECT * FROM employeesORDER BY department ASC, salary DESC;데이터베이스 MySQL 컬럼 정렬 조회 방법MySQL에서 컬럼을 정렬하는 방법은 데이터베이스에서 데이터를 조회할 때 매우 중요한 기능입니다. 정렬을 통해 원하는 정보를 쉽게 찾고, 가독성을 높일 수 있습니다. 테이블의 컬럼명 정렬 방법SELECT * FROM 테이블명 ORDER BY 컬럼명; 오름차순 정렬SELECT * FROM 테이블명 ORDER BY 컬럼명 ASC;asc(Ascending) 오름차순으로 정렬합니다. 1,2,3,4,5 순서입니다. (과거 -> 현재) 내림차순 정렬SELECT * FROM 테이블명 ORDER BY 컬럼명 DESC;Dsec를 사용하면 내림차순으로 정렬합니다. 5..
코딩에서 특정 정수 값을 증가시키려면 ++1 같은 값을 주면 증가가 가능한 것을 아실겁니다. 하지만 데이터베이스에서는 ++1 같은 명령어가 적용되지 않습니다. SQL에서 특정 정수 값을 증가 시키는 방법에 대해서 알아보겠습니다. update 테이블 set num = num + 1 where action = 'action' 테이블에서 action 컬럼의 값이 action 이라면 num 컬럼의 값을 1 증가시킴 ++1이랑 같은 효과를 낼 수 있습니다.
뷰 View 테이블은 접근이 허용된 사람에게 제한적으로 테이블 정보를 제공하기 위한 가상 논리 테이블입니다. 논리적으로 테이블이 만들어져 있기 때문에 실제 기본 테이블은 다른 위치에 있습니다. 보통 다른 솔루션에 제공을 하거나 업무상 필요 데이터만 추출해서 사용할 때 뷰 테이블을 만들어 사용합니다. 뷰 테이블 개념 설명 View 테이블 - 하나의 가상 테이블 입니다. - 데이터를 가공하여 view 테이블로 저장할 때 주로 사용 - 삽입, 삭제, 갱신 연산에 제약이 있다(UNION, GROUP BY 등이 불가) - 사용자 별 다른 데이터를 액세스 할 수 있도록 가능 뷰 만드는 방법(CREATE VIEW) CREATE VIEW 뷰이름[(속성이름[,속성이름])]AS SELECT문; --고객 테이블에서 주소가 ..
psql: 치명적오류: "root" 롤(role) 없음 해결 방법 뭔가 리눅스 시스템에서 쿼리문을 전달하고자 할 때 나올 수 있는 에러입니다. 쿼리로 root 룰을 만들어 줘야 하기 때문에 리눅스 시스템 안에서 postgresql에 접근해 줍니다. postgres 계정 접속 # su postgres sql문 write # psql DB 계정 정보 확인 # \du 계정을 확인해 보시면 기본적으로 postgres 계정은 존재하나 root 계정은 없습니다. 그렇기 때문에 리눅스에서 sql문을 사용할 때 root를 사용할 수 없습니다. root 계정을 만들어서 사용할 수 있게 만드는 방법에 대해서 알려드리겠습니다. root 계정 만들어 주기 # CREATE USER root WITH PASSWORD '암호'; ..
PostgreSQL을 사용할 때 아래와 같은 에러가 나올 때가 있습니다. Postgresql database Read-only Lock 해당 컬럼은 읽기 전용 락이 걸려있기 때문에 이것을 풀어줘야만 수정이 가능합니다. pgadmin을 사용하실 때 보통 컬럼에 더블클릭해서 값을 변경한 후 F6 키를 이용해서 적용하는데, lock이 걸리면 이것을 하지 못합니다. 먼저 해당 테이블을 우클릭하셔서 설정(Properties)으로 들어가 줍니다. 테이블에 대한 여러 설정들을 바꿀 수 있습니다. Columns 탭으로 이동합니다. 여기에 Primary Key를 지정해 주시면 됩니다. Primary Key는 그 테이블에서 기준이 되는 값이라고 생각해 주시면 됩니다. 그러고 나서 Save를 하시고 나오면 컬럼에 있던 자물..
안녕하세요 오늘은 데이터베이스, DB의 순위에 대해서 알아보겠습니다 DB-Engines 라는 사이트에서 확인하실 수 있습니다 RDBMS, NONSQL 등 여러 종류별 DB에 대한 순위도 보실 수 있고요 각 DB별 지원하는 언어라던지 라이선스 여부, XML 사용 가능 여부, API 정보 등 개발에 필요한 여러 정보들을 제공하고 있습니다 순위는 월별로 여러가지 항목들을 합산한 score 로 제공하고 있으니 자세한 정보는 홈페이지에서 확인하시면 되겠습니다 https://db-engines.com/en/ranking DB-Engines Ranking Popularity ranking of database management systems. db-engines.com 전체 DB 순위 전체 DB순위입니다 1위 오라..
안녕하세요 오늘은 터미널 환경에서 데이터베이스에서 데이터를 조회할 때 한글이 깨져서 보이지 않을 때 해결 방법에 대해서 알려드리겠습니다 이런식으로 영어로 된 데이터는 보이는데 한글 데이터는 ??? 물음표나 외계어로 나오는 경우가 있습니다 인코딩을 UTF-8 이나 한글을 인식할 수 있는 유니코드로 바꿔주셔야 합니다 먼저 DB에 접속을 하시고 set names utf8; 쿼리를 입력해 주시면 됩니다 그러고 나서 select 를 해보시면 정상적으로 데이터가 조회되는 것을 볼 수 있습니다 mysql config 에도 static 하게 등록해 줄 수 있습니다 /etc/mysql/my.cnf 파일을 오픈하셔서 mysqld 쪽에 default-character-set=utf8 입력하시고 저장해 주세요 그리고는 mys..
안녕하세요 mysql을 사용하기 위해 오라클의 Mysql database를 맥북에 설치하는 방법에 대해서 알아보겠습니다 우선 mysql 패키지를 먼저 다운로드 해주어야 합니다 https://dev.mysql.com/downloads/mysql/ 링크에 들어가 보시면 TAR, DMG 형태로 제공을 하고 있습니다 간편하게 DMG 버전으로 Download 해보도록 하겠습니다 다음에 보이는 페이지에서 뭔가 로그인을 하지 않으면 다운로드 파일을 주지 않겠다는 페이지 같지만 아래 No thanks, just start my download 를 클릭해서 바로 다운로드를 진행할 수 있습니다 dmg 파일을 열어보시면 안에 패키지 파일이 있고 이것을 실행해 줍니다 패스워드 암호화를 강하게 할 것이냐 이전버전으로 할 것이냐..