본문 바로가기

전체 글293

[MySQL] MySQL data 중복 제거 (DISTINCT, GROUPBY) 제거하기 전 혹시 모르니 table을 복사하자 CREATE TABLE [복사할 TABLE NAME] LIKE [원본 TABLE]; INSERT INTO [복사할 TABLE] SELECT * FROM [원본 TABLE]; DISTINCT : 중복 제거. 정렬 X DELETE DISTINCT [FIELD] FROM [TABLE] WHERE [조건]; GROUPBY : 중복 제거. 정렬 O DELETE FROM [TABLE] WHERE [INDEX NAME] IN (SELECT MIN( [INDEX NAME] ) FROM [TABLE NAME] GROUP BY [중복 제거할 COLUMN_1], [중복 제거할 COLUMN_2] HAVING COUNT(*) > 1) 여기서 INDEX 는 AUTO_INCREMENT.. 2022. 6. 9.
[Java] public static void main(String[] args) 의미 - public : main 메소드가 어디로든 접근 가능하게 함 - static : 인스턴스나 객체 생성 없이 main 메소드를 호출 가능하게 함 - void : main 메소드에 return 값 없음 - main : 메소드 이름 - String[] args : * 기본 저장소 * String 값만 받는 array 배열 이다. * array 이름은 args지만 'A' or 'test' 등으로 바꿀 수 있음 * String[] args 가 없으면 프로그램이 안 돌아가는 이유? 프로그램을 실행하면 저장할 공간이 필요한데, 이게 저장할 공간을 만드는 '선언' 이다. String[] args 가 없으면 저장할 공간이 없으므로 프로그램이 동작하지 않음 https://www.youth4work.com/Talent/.. 2022. 6. 8.
[Data Structure] 자료구조 - 현실을 프로그래밍으로 표현하는 것 - 집을 짓는데 필요한 건축자재. (모래, 시멘트, 벽돌 등) => 건축 자재(자료구조)로 건축하는 과정 == Algorithm(알고리즘) - big size data를 효율적으로 관리 1. 배열 (Array) - 여러 data를 하나의 이름으로 grouping하여 관리하기 위한 data structure - 관리할 data가 많아졌을 때 사용 (data가 2개인데 배열을 쓴다...?) - data를 넣는대로 index를 부여 - array는 크기가 정해져 있으며, array 요소의 index는 변화하지 않는다.(ex. 젠가 - 중간에 뭐가 빠져도 나머지는 그대로) 2. 리스트 (List) - 배열의 고정된 index가 아닌, 빠진 부분을 빈틈없이 data를 메우는 .. 2022. 6. 7.
[Web] URI, URL, URN 특징 및 차이 URI : 특정 Resource를 식별하는 String 식별자 (Uniform Resource Identifier) URL : name 없이 Resource location이나 address 정보를 가짐 (Uniform Resource Locator) URN : location 없이 name 정보만 가짐 (Uniform Resource Name) URI 구조 개념을 알면 URL, URN 모두 이해 할 수 있다. scheme: [//[user[:password]@]host[:port]] [/path] [?query] [#fragment] (1) scheme : 사용할 protocol을 의미. http, https 등 (2) user 및 pswd : (서버에 있는) data에 접근하기 위한 이름과 비밀번호 .. 2022. 6. 6.
[DB] MySQL의 InnoDB & MyISAM 언제 쓰면 더 좋은가? - data 변화가 많은 서비스에 좋음 - 대용량 data 제어 - transaction 관리 필요 - 복구 필요 - 정렬 등 구문이 들어감 - IUD 등이 자주 발생 - Row-Lovel locking을 지원하지 않아, CRUD 하면 table 전체가 locking - row 수가 많을수록 속도가 매우 느려짐 - Full-Text-Index 지원 - Select가 많은 서비스에 좋음 - 읽기 작업을 주로 할 때 - 전문 검색 필요 - transaction, 복구 X - 한번에 대용량 data를 입력하는 배치성 table - row-level locking 지원 https://needjarvis.tistory.com/45 https://rebeccajo.tistory.com/14 .. 2022. 6. 2.
[DB] MySQL DB 백업 및 복구 크롤링 작업으로 저장해둔 mysql table의 db가 replace 되어 날아갔다... 복구를 시도하기 전 미리 알았으면 유용했을 것을 적어둔다. 1) cmd 열기 2) MySQL 의 bin 폴더 위치 파악하기. 보통 C:\Program Files\MySQL\MySQL Server 8.0\bin 에 있음 3) bin 폴더 경로로 이동. bin 폴더로 이동하는 이유? mysqldump 파일이 있어야 백업이 되기 때문 cd [MySQL bin 폴더 위치] cd C:\Program Files\MySQL\MySQL Server 8.0\bin 4) 명령어 입력 mysqldump -u [user 이름] -p [database 이름] > [database 백업할 파일 이름].sql Enter password : [.. 2022. 6. 1.
[Python, Speedtest] 네트워크 시간 측정하기 본인 pc로 들어오는 네트워크 속도가 느린 것 같은데? 확인해보자 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 # [Title] Network Speed Test # pip install speedtest-cli import speedtest speed = speedtest.Speedtest() speed.get_best_server() """ print(f"Upload Speed : %s" % speed.upload()) print(f"Download Speed : %s" % speed.download()) """ print(f"Ping : {speed.results.ping} ms") print(f"Download Speed : {round(speed.downloa.. 2022. 5. 31.
[GIT] Git 활용 예제 1) Working Directory (Local) => 개인 코드 작성 2) Staging 영역 => git add 를 통해 수정된 코드를 올리는 영역 3) Repository => git commit을 통해 최종 수정본 제출 gitbash 를 엶 or VScode 의 터미널 open $ git config --local user,name "사용자 이름" => 사용자 이름 등록 $ git config --local user.email "사용자 이메일" => 사용자 이메일 등록 $ git config --list => 사용자가 설정한 모든 것을 보여줌. 설정 확인하자 $ git init => repository 에 가장 먼저 해야할 초기화 $git add . => 현재 directory의 모든 변경 내용.. 2022. 5. 30.