1.終端下連線mysql服務
mysql -uroot -p回車後輸入設定的密碼即可。
進去後每條命令結尾要帶分號;退出命令exit
單行注釋有兩種:# 或 --空格。多行注釋/* */
2.基本命令集合
針對資料庫:use sys; show databases;
檢視當前操作的資料庫:select databse();
針對表:1.建立表eg1示例:create table eg1( #此時回車
stuid int,
stuname varchar(20),
gender char, #代表單個字元
borndate datetime); #命令結尾時才帶分號
2. desc eg1; #檢視表的描述 describe
select * from eg1; #檢視表中所有字段資料,新建立的表應返回為empty set
insert into eg1 values(1,'張三','男','1999-6-6'); #向表中插入資料,注意使用英文逗號
insert into eg1 values(2,'李四','男','1999-6-6');
#若提示格式不對,set names utf8;修改my.ini裡的utf8為gbk
update eg1 set borndate='2020-02-02' where stuid=2; #更新/修改表中的資料,如果沒有後面的where,會更新整列資料delete from eg1 where stuid=1; #刪除資料alter table eg1 add column email varchar(20); #修改表的結構,新增列drop table eg1; #刪除整個表
3.基礎查詢
查詢結果是個虛擬表,不能直接運算元據。
select # 常量 表示式(這兩個不用寫來自哪個表) 函式 字段。對於來自哪個表可以雙擊表頭,將自動用著重符·填寫。不是關鍵字的可以不加著重符號
f12鍵 可對齊命令。
select version() #查詢版本
select user() #查詢使用者
起別名select user() as 使用者名稱; #as 也可以省略為空格
select user() as '用 戶名'; #包含了空格,避免使用查詢時出現語法錯誤
select user() as "使用者 名";
例如:select last_name as "姓 名" from table; #若不使用引號,會出現語法錯誤。
+ 在mysql中作為運算子時,字元型強制轉換為整形失敗,則預設為0。其中乙個運算元為null時,null+null=null=null+12=null。
字段拼接查詢
select concat(欄位1,欄位2) as "新 字 段" from table;
去重查詢: select distict欄位 from table;
顯示全部列,各個列用逗號連線,列頭顯示為out_put:
select concat(欄位1,','欄位2,','欄位3) as 新字段 from table;
ifnull(表示式1,表示式2) #如果表示式1為null,顯示結果為表示式2.
避免查詢出null: select concat(欄位1,','欄位2,','ifnull(欄位3,'')) as 新字段 from table;
4.條件查詢
select查詢列表from table
where 篩選條件;
執行順序為:from->where->select
select * from table where id<>100; #查詢id不等於100的資訊。
select * from table where not(id>=20 and id<= 60); #查詢id小於20大於60的資訊。雖然可以用!代替not, &&代替and 但是不建議,這樣不專業。
模糊查詢:like 一般和萬用字元_(單個字元) %(多個字元)
select * from table where like '%條件%' #查詢包含 條件 的資訊。
查詢下劃線_: '$_%' escape '$'; #escape 使$符號 變為使轉義字元,相當於\ 不過不建議,不炫。
in (常量表示式1,常量表示式2,常量表示式3) not in 非數值的常量值,比如字元,要用單引號引起來。
select 字段 from table where id in(55,66,77); #查詢id 為 55 66 77
between and #判斷某個字元的值是否介於xx之間。
select 字段 from table where id between 30 and 90; #
= #用於普通內容
is null is not null #用於null
<=> #安全等於,既能判斷普通內容,又能判斷null值
舉例:id<=> null; id<=>22;
5.排序查詢
select查詢列表from table
where 篩選條件
order by 排序列表
select * from table where id>100 order by salary asc; #asc是公升序,不寫預設為公升序。降序為desc。
select *,num*12 總額 from table where id is not null order by 總額 desc; #插入新算術表示式,並降序排列。
按函式的結果排序:
select 字段 from table order bylenth(字段); #按欄位位元組長度公升序排列
select 字段 from table order by char_lenth(字段); #按字元長度排列
select欄位1 欄位2 欄位3from table
order by 欄位1,欄位2 desc; #先按字段1公升序排列,再滿足按欄位2降序排列。
select * from table order by 字段; #欄位為第2列時,就寫個 order by 2 也行。
6.函式
字元函式:拼接字元:concat
select lenth('ab天'); #結果為5,乙個漢字三個位元組
select char_lenth('ab天') #結果為3。
擷取字元:select substr('因為自己不夠沙雕而感到自卑',7,2); #7為起始索引(從1開始),2為長度,輸出結果為 沙雕,不寫長度擷取到最後。
獲取字元出現索引:select instr('因為自己不夠沙雕而感到自卑','自己'); #結果為3
去空格:預設是去空格
select trim('x' from '******本品***x' ) as a ;
select trim( ' 本品 ' ) as a ; #結果都是下圖
填充:左填充 lpad 右填充rpad
select lpad('木婉清',10,'a');
select rpad('木婉清',4,'a');
mysql零基礎操作 mysql 零基礎 開始過程
2016 11 07 算是差不多是兩個月的學習,我也馬上要結課了.今天才勉強把mysql裝上,之前還有因為使用者許可權的問題,以及使用者為建立的問題.應該早點就把該準備的開發平台準備好,而不是在最後快考試了來做這件事情,絆倒在細枝末節的東西上.安裝不成功,當時我按照教程,教程上邊說可以跳過管理員的創...
零基礎vue專案建立
從零開始建立乙個vue專案 1.第一步 安裝vue cli npm install vue cli g 全域性安裝 vue cli 檢視vue cli是否成功,不能檢查vue cli,需要檢查vue 2.第二步 初始化乙個vue專案 vue init webpack 專案名稱 其他選擇yes,以下3...
零基礎如何學習MySQL?
送給新手學習的建議,請仔細閱讀。在學習新的東西的時候,我們至少從三個問題開始。what?why?how?學習需要堅持,如果還沒準備好堅持半年比較枯燥的mysql之旅,那麼就別開始。學習東西不在多,在精,市面上有非常多的mysql教程,不要瞎學,今天這裡學一點,明天那裡學一點,這樣你學的都只是知識點,...