MYSQL 學(xué)習(xí)筆記01

SQL 語法分類:

  1. DDL 數(shù)據(jù)定義語句
    • CREATE DATABASE - 創(chuàng)建數(shù)據(jù)庫
    • ALTER DATABASE - 修改數(shù)據(jù)庫
    • CREATE TABLE - 創(chuàng)建表
    • ALTER TABEL - 修改表舵揭,表更表
    • DROP TABLE - 刪除表
    • CREATE INDEX - 創(chuàng)建索引(搜索鍵)
    • DROP INDEX - 刪除索引
  2. DML 數(shù)據(jù)操作語句
    • SELECT - 從數(shù)據(jù)庫表中獲取數(shù)據(jù)
    • UPDATE - 從數(shù)據(jù)庫表中修改數(shù)據(jù)
    • DELETE - 從數(shù)據(jù)庫表中刪除某條數(shù)據(jù)
    • INSERT INTO - 從數(shù)據(jù)庫表中插入某條數(shù)據(jù)
  3. DCL 數(shù)據(jù)控制語句 ?授權(quán)/取消授權(quán)
  4. DQL 數(shù)據(jù)查詢語句 SELECT

WHERE 語句

WHERE 語句 SQL條件語句

操作符 描述
= 等于
<> 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于
BETWEEN 在某個(gè)范圍內(nèi)
LIKE 搜索某種模式

AND & OR 語句

AND 和 OR 可在 WHERE 子語句中把兩個(gè)或多個(gè)條件結(jié)合起來蓄喇。

如果第一個(gè)條件和第二個(gè)條件都成立蔚晨,則 AND 運(yùn)算符顯示一條記錄揭绑。

如果第一個(gè)條件和第二個(gè)條件中只要有一個(gè)成立秕衙,則 OR 運(yùn)算符顯示一條記錄限书。

示例:
SELECT * FROM user WHERE age>15 AND age<20;
#查詢 user 表中年齡大于15 并且小于 20的數(shù)據(jù)

OR語句與AND 語法一致 - 且滿足一個(gè)條件用OR

ORDER BY

ORDER BY 語句用于根據(jù)指定的列對結(jié)果集進(jìn)行排序戏羽。

ORDER BY 語句默認(rèn)按照升序?qū)τ涗涍M(jìn)行排序婆芦。

如果您希望按照降序?qū)τ涗涍M(jìn)行排序蜂怎,可以使用 DESC 關(guān)鍵字(默認(rèn)ASC)穆刻。

Orders 表 ?

Company orderNumber
IBM 3532
W3School 2356
Apple 4698
#ORDER BY 查詢
SELECT Company,orderNumber FROM Orders ORDER BY Company;
#根據(jù)字母降序 Apple IBM W3School 展示給我們 
SELECT Company,orderNumber FROM Orders ORDER BY Company DESC;
#根據(jù)字母升序 W3School IBM Apple 展示給我們

創(chuàng)建一個(gè)庫

CREATE

? CREATE DATABASE "NAME" #創(chuàng)建一個(gè)庫

? DROP DATABASE IF EXISTS "NAME" #如果有這個(gè)庫名字就刪除

? DROP DATABASE 庫名 #刪除一個(gè)數(shù)據(jù)庫

? CREATE DATABAS "NAME" CHARSET=UTF8 #創(chuàng)建一個(gè)庫 UTF8編碼
? 建議: 庫名/表名/列名 全部小寫,只有英文不用其他字符

示例: ==>
CREATE DATABASE school CHARSET=UTF8;
USE school;
CREATE TABLE user(
  uid INT PRIMARY KEY AUTO_INCREMENT, #主鍵自動增加c
  uname VARCHAR(16) NOT NULL DEFAULT '', #16個(gè)字符
  #NOT NULL DEFAULT  表示必填字段
  upwd VARCHAR(32) NOT NULL DEFAULT '',   #密碼加密32個(gè)字符
  iphone VARCHAR(32) NOT NULL DEFAULT '', #創(chuàng)建手機(jī)號 32個(gè)字符
  email VARCHAR(50) NOT NULL DEFAULT '',  #電子郵箱 50個(gè)字符
  sal DECIMAL(10,2) NOT NULL DEFAULT 0    #貨幣 高精度的浮點(diǎn)數(shù)
);
#大型項(xiàng)目 INT 單位為分
# 外鍵 FOREIGN KEY(uid本表) references user(uid外表)

增加操作

INSERT INTO

INSERT INTO 表名(插入對應(yīng)的值) <u>#值跟創(chuàng)建表相互對應(yīng)</u>

INSERT INTO user VALUE (null,'cm',md5('123456'),'13551339644','13551339644@163.com',20000.50)

INSERT INTO 表名(插入的對應(yīng)字段)VALUES(插入相對應(yīng)的值) <u>#值跟對應(yīng)字段相互對應(yīng)</u>

#根據(jù)上面的表創(chuàng)插入一條數(shù)據(jù)
INSERT INTO user(uid,uname,upwd,iphone,email,sal)
  VALUES(null,'lx',md5('123456'),'18523320148','512153241@qq.com',2000.50);

修改操作

UPADATE

UPDATE 表名 SET 對應(yīng)字段 = 新值 WHERE(對應(yīng)條件)

UPDATE user SET sal=200000.00 WHERE uname='lx'

修改某一行若干個(gè)數(shù)據(jù)

UPDATE 表名 SET 對應(yīng)字段 = 新值杠步,對應(yīng)字段 = 新值 WHERE (對應(yīng)條件)

UPDATE user SET iphone="18523320038",sal=500000.00 WHERE uname='lx'

查找操作

SELECT

SELECT (查詢的字段) FROM 表名 WHERE (查詢對應(yīng)的條件)

SELECT * FROM user WHERE uname='lx';
#查找數(shù)據(jù)庫的方式 在實(shí)際操作中禁止用*來代替查找全部
SELECT uid,uname,phone,email,upwd,sal FROM user WHERE iphone='lx';

SELECT DISTINCT 用于返回唯一不同的值氢伟。[^表中有多個(gè)相同,查詢其中唯一不同的值用此語法]

SELECT DISTINCT 列名稱 FROM 表名稱

刪除操作

DELETE

DELETE FROM 表名 WHERE (刪除對應(yīng)的條件)

#插入一條數(shù)據(jù)
INSET INFO user (uid,uname,upwd,iphone,email,sal)
  VALUES(null,'lcm',md5('123456'),'13551339644','13551339644@163.com',20000.50);
#刪除一條數(shù)據(jù)
DELETE FROM user WHERE uname='lcm'
#刪除所有行
DELETE FROM user
#或者
DELETE * FROM user

示例

CREATE TABLE emps_task(
    eid INT PRIMARY KEY AUTO_INCREMENT,
    uid INT,
    emp_task INT,
    emp_task_money INT,
    mon VARCHAR(6),
    FOREIGN KEY(uid) references user(uid)
);

INSERT INTO emps_task(eid,uid,emp_task,emp_task_money,mon) VALUES(null,3,12,10000,1);

#mysqli_affected_rows 被影響的條數(shù)

var uname = "or 1=1;delete from mysql.user"; //注入   or/或  and/與
var sql = "SELECT * FROM xz_admin `WHERE uname=$(uname)` and upwd=md5('$upwd')";
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末幽歼,一起剝皮案震驚了整個(gè)濱河市腐芍,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌试躏,老刑警劉巖猪勇,帶你破解...
    沈念sama閱讀 222,590評論 6 517
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異颠蕴,居然都是意外死亡泣刹,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,157評論 3 399
  • 文/潘曉璐 我一進(jìn)店門犀被,熙熙樓的掌柜王于貴愁眉苦臉地迎上來椅您,“玉大人,你說我怎么就攤上這事寡键∠朴荆” “怎么了?”我有些...
    開封第一講書人閱讀 169,301評論 0 362
  • 文/不壞的土叔 我叫張陵,是天一觀的道長员舵。 經(jīng)常有香客問我脑沿,道長,這世上最難降的妖魔是什么马僻? 我笑而不...
    開封第一講書人閱讀 60,078評論 1 300
  • 正文 為了忘掉前任庄拇,我火速辦了婚禮,結(jié)果婚禮上韭邓,老公的妹妹穿的比我還像新娘措近。我一直安慰自己,他們只是感情好女淑,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,082評論 6 398
  • 文/花漫 我一把揭開白布瞭郑。 她就那樣靜靜地躺著,像睡著了一般鸭你。 火紅的嫁衣襯著肌膚如雪屈张。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,682評論 1 312
  • 那天苇本,我揣著相機(jī)與錄音袜茧,去河邊找鬼菜拓。 笑死瓣窄,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的纳鼎。 我是一名探鬼主播俺夕,決...
    沈念sama閱讀 41,155評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼贱鄙!你這毒婦竟也來了劝贸?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 40,098評論 0 277
  • 序言:老撾萬榮一對情侶失蹤逗宁,失蹤者是張志新(化名)和其女友劉穎映九,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瞎颗,經(jīng)...
    沈念sama閱讀 46,638評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡件甥,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,701評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了哼拔。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片引有。...
    茶點(diǎn)故事閱讀 40,852評論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖倦逐,靈堂內(nèi)的尸體忽然破棺而出譬正,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 36,520評論 5 351
  • 正文 年R本政府宣布曾我,位于F島的核電站粉怕,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏您单。R本人自食惡果不足惜斋荞,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,181評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望虐秦。 院中可真熱鬧平酿,春花似錦、人聲如沸悦陋。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,674評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽俺驶。三九已至幸逆,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間暮现,已是汗流浹背还绘。 一陣腳步聲響...
    開封第一講書人閱讀 33,788評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留栖袋,地道東北人拍顷。 一個(gè)月前我還...
    沈念sama閱讀 49,279評論 3 379
  • 正文 我出身青樓,卻偏偏與公主長得像塘幅,于是被迫代替她去往敵國和親昔案。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,851評論 2 361

推薦閱讀更多精彩內(nèi)容