본문 바로가기

sql

(8)
mysql user 생성 및 roll 권한 부여 #@localhost는 내부접근 @"%" 외부 접근 허용이고 ""를 붙이는건 상관없다. create user test2@localhost identified by "user1234"; create user "test3"@"%" identified by "1234";v user 생성 후 권한 주기 all privileges on은 모든 권한을 주는것 mysql 8.0 이후부터는 생성하면서 권한을 주지 못함 create user "test4"@"localhost" identified by "1234"; grant all privileges on *.* to "test4"@"localhost" with grant option; #권한 해제 revoke grant option on *.* from "test4"..
주식 데이터로 sql 연습 (section 3) #DDL create table sector( 종목코드 varchar(8) not null, 섹터 varchar(30), constraint sector_pk primary key (종목코드) ); insert into sector(종목코드,섹터) values ("000210","기타 금융업"); insert into sector values ("163560","고무제품 제조업"); insert into sector values ("155660","1차 비철금속 제조업"); update sector set 섹터 = "제조업" where 종목코드 = "163560"; delete from sector where 종목코드 = "163560"; select * from sector; create table s..
mysql 터미널 접속 및 사용법 본인 컴퓨터 환경 mac m1 cd /usr/local/mysql/bin 후 ./mysql -u root -p 로 접속 후 비번 입력 다른 user로 접속시 ./mysql -u (user명) -p use stock; 나가기 quit;
주식 데이터로 sql 연습 (section 2) #groupy by로 ticker별 평균 종가를 구함 # groupby의 비용이 크기 때문에 where절로 먼저 데이터를 줄이고 having을 이용하는게 좋음 select ticker, avg(end1) as av #5 from price #1 where day1 > "20201231" #2 group by ticker #3 having av > 100000 #4 order by av desc; #6 #equi 조인 select a.ticker, a.open1, a.end1, b.대표자명 from price a , company b where a.ticker = b.종목코드; # non equi join >,= 등등 사용 select a.ticker, a.open1, a.end1, b.대표자명 from ..
python 상장 기업 정보 mysql에 insert하기 mysql에 company table 생성 drop table company; create table company ( 회사명 varchar(20) not null, 종목코드 varchar(8) not null, 업종 varchar(50), 주요제품 varchar(100), 상장일 varchar(20), 결산월 varchar(5), 대표자명 varchar(50), 홈페이지 varchar(50), 지역 varchar(50), primary key(종목코드) ); kind에서 상장 기업들의 정보를 크로링해서 mysql에 insert def load_mysql_company(): def get_stocks(market=None): market_type = '' if market == 'kospi': marke..
주식 데이터로 sql 연습 (section 1) sql에 익숙해지기 위해 주가데이터를 mysql에서 연습 데이터 형태 컬렴 : 티커, 날짜 , 시가, 고가, 저가, 종가,거래대금, 거래량, 등락율, 회사명 예시 '000020','20190102','9190','9430','9080','9340','88403','819092510','2.64','동화약품' '000020','20190103','9340','9390','9130','9170','54992','505672260','-1.82','동화약품' '000020','20190104','9100','9700','9100','9530','115336','1084780820','3.93','동화약품' '000020','20190107','9660','9800','9510','9530','107912','..
python 주가 데이터 mysql에 insert하기 우선 mysql에서 table을 만들어 주었습니다. 기본키는 티커와 날짜 두개의 다중 기본키를 사용하였습니다. create table price ( ticker varchar(6) not null, day1 varchar(8) not null, open1 int, high int, low int, end1 int, volume int, mount Long, rate float, name1 varchar(20), primary key(ticker,day1) ) 일정기간동안의 주가 데이터를 pykrx로 가져와서 전처리합니다 def getStockPrice(self,start_day, end_day): print("start get_stock_price") def str_day(d): return d.strf..
파이썬 dataframe mysql insert하기 주식 데이터를 분석하면서 주가 데이터를 매번 가져와 전처리하기 보다 나만의 db가 있었으면 해서 mysql에 다양한 주식 데이터를 올릴려고 한다 우선 파이썬에서 mysql을 사용하는 여러 방법을 간단하게 정리하려한다 1. mysql.connector conn = pymysql.connect(host='localhost', user='root', password='비번', db='Stock', charset='utf8') sql = """INSERT INTO Weather VALUES (%s, %s, %s, %s, %s)""" for i, row in weather.iterrows(): cur.execute(sql, tuple(row)) conn_aws.commit() with conn: with conn..