mysql數(shù)據(jù)庫基礎(chǔ)知識點與操作小結(jié)
本文實例講述了mysql數(shù)據(jù)庫基礎(chǔ)知識點與操作。分享給大家供大家參考,具體如下:
數(shù)據(jù)庫
一、 修改數(shù)據(jù)表
添加一列:
ALTERTABLE tab_name ADD col_name column_defi[FIRST|AFTER col_name];
可以指定新列的位置關(guān)系,位于最開頭(FIRST)或者位于某列之后(AFTER…),否則新列默認位于最后。
添加多列:
ALTERTABLE tab_name ADD(col_name1 column_defi1,col_name2 column_defi2...);
刪除一列:
ALTERTABLE tab_name DROP col_name;
刪除多列或者刪除之后再新增一列,只需在drop col_name之后加逗號,再寫drop/add。
添加約束:
ALTERTABLE tab_name ADD PRIMARY KEY (index_column);
其中primary key可以替換為其他約束UNIQUE、FOREIGN KEY,默認約束為SET DEFAULT。
刪除約束:
ALTERTABLE tab_name DROP {INDEX|KEY} index_name
刪除外鍵:
ALTERTABLE tab_name DROP FOREIGN KEY fkey_name
其中外鍵約束名fkey_name可以通過show create table tab_name;查看constraint項得到,例如
CONSTRAINT `users_ibfk_1` FOREIGN KEY (`pid`) REFERENCES
修改列定義:
ALTERTABLE tab_name MODIFY col_name col_defi;
修改列名稱:
ALTERTABLE tab_name CHANGE old_colname new_name col_defi;
修改數(shù)據(jù)表名稱:
RENAMETABLE old_name TO new_name;
二、 數(shù)據(jù)表操作
插入記錄:
INSERT tab_name[(col_name)] VALUES (val1,val2...)
其中列名可選,如果不設(shè)置列名,默認為對每一列都插入。第二種插入方法:INSERT tab_name SET col_name=val...第三種方法:insert tab_name select…,將查詢結(jié)果插入數(shù)據(jù)表。
更新記錄:
UPDATE tab_name SET col_name=val [WHERE condition];
where條件如果不填,默認對所有記錄進行更新。
刪除記錄:
DELETE FROM tab_name [WHERE condition];
刪除滿足條件的記錄,如不填where,全刪。
查詢記錄:
SELECT col_name1,col_name2... /*選擇需要查詢的列名*/ FROM tab_name/*選擇需要查詢的數(shù)據(jù)表*/ WHERE condition/*查詢條件*/ GROUP BY col_name [ASC|DESC]/*查詢結(jié)果分組*/ HAVING condition/*對查詢分組經(jīng)行篩選*/ ORDER BY col_name[asc|desc]/*對查詢結(jié)果經(jīng)行排序*/ LIMIT [n1,]n2/*返回從n1開始的n2條結(jié)果,不填n1默認從開頭返回*/
三、 子查詢
父查詢與子查詢的連接由比較符號連接,子查詢返回多個結(jié)果時還可以由ANY、ALL對結(jié)果進行修飾。
多表更新:參照另外一個表來更新本表。
內(nèi)連接:INNERJOIN ON join_condition
,返回左右兩表中滿足條件的項。
左外連接:LEFTJOIN ON join_condition
,返回左表全部與右表中滿足條件的項。
左外連接: RIGHT JOIN ON join_condition
,返回右表全部與左表中滿足條件的項。
四、 數(shù)據(jù)庫函數(shù)
CONCAT('a','b'…) |
連接a,b多個字符串 |
CONCAT_WS('s','a','b'…) |
以s為連接符連接多個字符串 |
FORMAT(f,n) |
以n位小數(shù)顯示數(shù)字f |
LOWER()/UPPER() |
將內(nèi)容轉(zhuǎn)換為小/大寫 |
LEFT/RIGHT(‘s',n) |
獲取字符串左邊/右邊前n個字符 |
LENGTH() |
獲取字符串長度 |
LTRIM/RTRIM/TRIM() |
去除字符串左邊/右邊/兩邊空格 |
REPLACE(‘s','a','b') |
將字符串s中的a字符替換為b |
SUBSTRING('s',n,e) |
截取字符串從第n位開始的e個字符 |
IS NULL |
判空 |
n IN(a,b,c…) |
判斷n是否在列出的值中 |
n BETWEEN a AND b |
判斷n是否在a到b之間 |
更多關(guān)于MySQL相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《MySQL查詢技巧大全》、《MySQL常用函數(shù)大匯總》、《MySQL日志操作技巧大全》、《MySQL事務(wù)操作技巧匯總》、《MySQL存儲過程技巧大全》及《MySQL數(shù)據(jù)庫鎖相關(guān)技巧匯總》
希望本文所述對大家MySQL數(shù)據(jù)庫計有所幫助。
- php基礎(chǔ)之連接mysql數(shù)據(jù)庫和查詢數(shù)據(jù)
- PHP連接和操作MySQL數(shù)據(jù)庫基礎(chǔ)教程
- Mysql入門基礎(chǔ) 數(shù)據(jù)庫創(chuàng)建篇
- PHP5 操作MySQL數(shù)據(jù)庫基礎(chǔ)代碼
- mysql 8.0.15 安裝圖文教程及數(shù)據(jù)庫基礎(chǔ)
- MySQL數(shù)據(jù)庫基礎(chǔ)命令大全(收藏)
- 很全面的Mysql數(shù)據(jù)庫、數(shù)據(jù)庫表、數(shù)據(jù)基礎(chǔ)操作筆記(含代碼)
- mysql 數(shù)據(jù)庫基礎(chǔ)筆記
- python 專題九 Mysql數(shù)據(jù)庫編程基礎(chǔ)知識
- MySQL數(shù)據(jù)庫基礎(chǔ)入門之常用命令小結(jié)
- MySQL數(shù)據(jù)庫基礎(chǔ)篇之入門基礎(chǔ)命令小結(jié)
- MySql數(shù)據(jù)庫基礎(chǔ)知識點總結(jié)
相關(guān)文章
mysql截取的字符串函數(shù)substring_index的用法
這篇文章主要介紹了mysql截取的字符串函數(shù)substring_index的用法,需要的朋友可以參考下2014-08-08LEFT JOIN條件在on后面和在where后面的區(qū)別及說明
這篇文章主要介紹了LEFT JOIN條件在on后面和在where后面的區(qū)別及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09Navicat Premium15連接云服務(wù)器中的數(shù)據(jù)庫問題及遇到坑
這篇文章主要介紹了Navicat Premium15連接云服務(wù)器中的數(shù)據(jù)庫問題及遇到坑,本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學(xué)習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03MySQL數(shù)據(jù)庫主機127.0.0.1與localhost區(qū)別
這篇文章主要介紹了MySQL主機127.0.0.1與localhost區(qū)別總結(jié),需要的朋友可以參考下2018-06-06