2、數(shù)據(jù)庫(kù): OLTP//online transaction process ,在線事務(wù)處理
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的索縣網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
3、drop databases if exists mybase//刪除數(shù)據(jù)庫(kù)
4、show tables //顯示表
5、create database mybase //MySQL 創(chuàng)建庫(kù)
6、create table test(id int ,name varchar(20)); //創(chuàng)建列表
7、select id from test //查看表中的內(nèi)容
8、兩張表合成:select a.*,b.* form tbls a,columms_v2 b where a.tbl_id = b.tbl_id
9、show databases; //顯示數(shù)據(jù)庫(kù)
10、在/soft/hive/bin/下執(zhí)行:hive 后再執(zhí)行:create database if not exists mybase;
11、用自己的庫(kù)的話就執(zhí)行:use mybase ; ------>記得加分號(hào)
show tables; ——————》顯示表信息
12、創(chuàng)建表:create table test(id int , name varchar(20));
13、查看表的結(jié)構(gòu):desc test
14、往數(shù)據(jù)庫(kù)里面放數(shù)據(jù):insert into test(id,name)values(1,'tom');
15、select * form test //查看表中所有的內(nèi)容
具體流程是:創(chuàng)建庫(kù):create database mysbase ------>用那個(gè)庫(kù)use mybase ------->創(chuàng)建表create table test(id int ,name varchar(20))
-----------------------------------------------------
表的填寫信息及創(chuàng)建語(yǔ)法:
1、create table if not exists employee(edi int ,nam String,salary String, destination String)
2、comment ‘employee details’
4、 row format delimited fields terminated by ‘\t’ //這行的格式分隔如何 :(1 tom 12 )
5、lines terminated by ‘\n’ //換行1 tom 12
2 tod 13
6、stored as textfile; //存儲(chǔ)為文本文件
dfs -lsr / ;//查看它們的目錄結(jié)構(gòu)
-------------------------------------------------------------------------------------------
desc[ribe] database mybase ; //查看數(shù)據(jù)庫(kù)信息
alter database mybase set dbproperties ('created'='xpc'); //修改數(shù)據(jù)庫(kù),增加數(shù)據(jù)庫(kù)屬性
desc database extended mybase ; //顯示數(shù)據(jù)庫(kù)擴(kuò)展信息,不能格式化輸出
desc extended default.test0 ; //顯示表擴(kuò)展信息
desc formatted default.test0 ; //顯示表格式化信息
desc extended test ; //顯示表的擴(kuò)展信息
create database mybase location '/x/x/x/x' //指定數(shù)據(jù)庫(kù)存放hdfs位置
create table default.test0 like mybase.test2 ; //復(fù)制表結(jié)構(gòu)
load data local ... //上傳本地文件到hdfs
load data '/x/x/x' into table xx //移動(dòng)hdfs文件系統(tǒng)上的數(shù)據(jù)文件。
insert into mybase.test2 select * from default.test0 where id > 1204 ;//復(fù)制表數(shù)據(jù)
create table mybase.test3 as select * from default.test0 ; //復(fù)制表(表結(jié)構(gòu) + 數(shù)據(jù))
select all id,name from test2 ; //查詢所有記錄(不去重)
select distinct id,name from test2 ; //查詢所有記錄(去重)
--------------------------------------------------------
拷貝一張已經(jīng)存在的表模式
create table if ont exists mydb.employees2 like mydb.employees
-------------------------------------------
如何從本地插進(jìn)文本文件:
load data local inpath '/home/user/sample.txt' overwrite into table tset;
----------------------------------------------------------
外部表的創(chuàng)建步驟:
1、create database mybase ; //創(chuàng)建庫(kù)
2、use mybase ; //用庫(kù)
3、create external table etest(id int ,name string,age int) row format delimited fields terminated by '\t' stored as textfile ;//創(chuàng)建外部表
4、查看表的參數(shù): desc formatted etest ; 查看有 多少?gòu)埍恚簊how tables 看表的結(jié)構(gòu)select * from etest ;
5、創(chuàng)建臨時(shí)表create tempporary table temp(id int ,name string,age int) row format delimited fields terminated by '\t' stored as textfile ;
6、CTAS:create table as select
7、truncate :刪除所有的行,只能用于內(nèi)部的表
8、修改表分隔符:alter table table_name set serdeproperties (‘field,delimi’= ',')
9、修改表的位置:alter table 表名 set location 'hdfs:/xxx/x/表名'
分區(qū)表
------------
[手動(dòng)分區(qū)--靜態(tài)分區(qū)]
1.預(yù)先定義分區(qū)列和存儲(chǔ)數(shù)據(jù)到表的子目錄下。
2.創(chuàng)建分區(qū)表
create table xxx(...) partitioned by (year int ,month int) row format ...;
3.給分區(qū)表添加多個(gè)分區(qū)(手動(dòng)分區(qū))
alter table partest add partition (year=2016,month=4) partition (year=2016,month=5);
4.顯示指定表的分區(qū)
show partitions partest ;
5.刪除分區(qū)
ALTER TABLE partest DROP IF EXISTS PARTITION (year=2014, month=11);
6.加載數(shù)據(jù)到指定的分區(qū)目錄下。
LOAD DATA LOCAL INPATH '..sample.txt' OVERWRITE INTO TABLE partest PARTITION (year=2016, month=4);
單是查詢2016年4月份的數(shù)據(jù):select * from 表名 where year=2016 and month = 4 ;
7.啟動(dòng)動(dòng)態(tài)分區(qū)(默認(rèn)是開(kāi)啟的)
SET hive.exec.dynamic.partition=true; //啟動(dòng)動(dòng)態(tài)分區(qū).
//默認(rèn)是strict,是嚴(yán)格模式,至少要指定一個(gè)分區(qū)類,通過(guò)如下指令關(guān)閉嚴(yán)格模式。
SET hive.exec.dynamic.partition.mode=nonstrict;//設(shè)置分區(qū)模式,非嚴(yán)格.
8.測(cè)試動(dòng)態(tài)分區(qū)
insert into table partest partition(year,month) select id,name,age,year,month from test ;