MySQL 常见的sql命令
1、sql 使用單引號來環(huán)繞文本值(大部分數(shù)據(jù)庫系統(tǒng)也接受雙引號)。如果是數(shù)值,請不要使用引號。
一、數(shù)據(jù)庫
? ? ? ? 1、創(chuàng)建數(shù)據(jù)庫
? ? ? ? ? ? ??CREATE DATABASE lesson ;
? ? ? ? ? ? ??創(chuàng)建一個名字為lesson的數(shù)據(jù)庫?
?
? ? ? ? 2、刪除數(shù)據(jù)庫
? ? ? ? ? ?drop database lesson ;
?
二:表
? ? ? ? 1、創(chuàng)建表
? ? ? ? ?? CREATE TABLE `mydb`.`it` (
? ? ? ? ? ? `id` INT NOT NULL,
? ? ? ? ? ? `name` VARCHAR(45) NULL,
? ? ? ? ? ? PRIMARY KEY (`id`)
? ? ? ? ? );
? ? ? 在名字為mydb的數(shù)據(jù)庫中創(chuàng)建一個表,表的名字叫it.
? ? ? 表中有兩個字段 : id ?, name 。 其中主鍵為 id?
? ? ? 2、刪除表
? ? ? ? ?DROP TABLE `mydb`.`it`;
? ? ? ? ? 數(shù)據(jù)庫名: mydb
? ? ? ? 表名 ? ? : it?
? ??
? ? ?3、修改表的名字
? ? ? ? RENAME TABLE student TO user ;
? ? ? ? 把student表的名字改為user
? ?
? ? 4、復制表
? ? ? ? create table table2 select * from user ;
? ? ? ? 通過復制user表,來創(chuàng)建一個新表table2
?
三:增加數(shù)據(jù)
? ? ?1、往表里插入數(shù)據(jù)
? ? ? ? ? ? ?INSERT INTO `mydb`.`user` (`id`, `name`, `age`) VALUES ('2', 'lisid', '25');
? ? ? ? ? ? ?mydb : 數(shù)據(jù)庫名
? ? ? ? ? ? ?user ?: 表名
? ? ? ? ? ? ?id ,name , ?age :代表三個字段
? ? ? ? ? ? ?VALUES ?:字段對應的數(shù)據(jù)
?
四:刪除數(shù)據(jù)
? ? ? ??1、條件刪除(刪除一行數(shù)據(jù))
? ? ? ? ?DELETE FROM user WHERE ?id=1 ?;?
? ? ? ? ??刪除id = 1?的所有數(shù)據(jù) ?(刪除id =1 的這一行)
? ?
?五、更新數(shù)據(jù)
? ? ? ? ??1、更新一個字段的值 ? ??
? ? ? ? ? ? ?UPDATE `mydb`.`user` SET `age`='22' WHERE `id`='1';
? ? ? ? ? ? ?數(shù)據(jù)名:?mydb
? ? ? ? ? ? ?表名 ?:?user
? ? ? ? ? ? ?字段 ?:?age
? ? ? ? ? ? ?篩選條件 : id = 1 ;
? ? ? ? ? ? ?在mydb數(shù)據(jù)庫,user表中,把id = 1 的這一行的 age 屬性值修改為 22
?
? ? ? ? ?2、更新多個字段的值
? ? ? ? ? ? ? UPDATE `mydb`.`user` SET `name`='奶茶妹妹', `age`='18' WHERE `id`='2';?
? ? ? ? ? ? ? 在mydb數(shù)據(jù)庫,user表中,把id = 2 的這一行的?name屬性值修改為?奶茶妹妹?, age 屬性值修改為 22?
?
六:查詢數(shù)據(jù)
? ? ? ? ?1、查詢
? ? ? ? ? ? ? SELECT * FROM mydb.user;
? ? ? ? ? ?從mydb數(shù)據(jù)庫中查詢user表里面的所有數(shù)據(jù)
?
? ? ? ? 2、單屬性查詢
? ? ? ? ? ?SELECT name ?FROM user ;
? ? ? ? ? ? ?從user表中查詢所有的name屬性值?
?
? ? ? ?3、多屬性查詢
? ? ? ? ? ? SELECT name , age ?FROM user ;
? ? ? ? ? ?從user表中查詢所有的name 和 age 的屬性值?
??
? ? ? 4、條件查詢 where
? ? ? ? ? ?SELECT name , age , id ?FROM user where id = 2 ;
? ? ? ? ? ?從user表中查詢id等于2的所有name、age、id 的屬性值,注意id的類型是整型,所以2不用加單引號
?
? ? ? ? ?SELECT name , age , id ?FROM user where name = 'tom' ;
? ? ? ? ?從user表中查詢 name 值等于‘tom’ 的所有name、age、id 的屬性值,注意name的類型是字符型,‘tom’加單引號
? ? ? ??
? ? ? ? ?SELECT * FROM `user` WHERE id > 5 ?;
? ? ? ? ?從user表中查詢 id 值 大于 5 的所有name、age、id 的屬性值?
? ? ? ? ?
? ? ? ? ?所有的邏輯運算符都支持: 大于 > ?、 ?小于 < ?、 大于等于 >= ?、 小于等于 <= ?、 等于 = ?、 不等 ?!=? ?(或者 <>)?
? ? ? ??
? ? ? ? ?SELECT * FROM `user` WHERE id BETWEEN 3 AND 8 ?;
? ? ? ? ?user : 表名
? ? ? ? ?id ? ?: 字段名
? ? ? ? ?between : 操作符 ??作用是選取介于兩個值之間的數(shù)據(jù)范圍?
? ? ? ? ?從user表中查詢 id值在3(包含3) 到 (包含8)之間的所有name、age、id 的屬性值 。 也就是 id 大于等于3, 小于等于8之間。
?
? ? ? ? ?SELECT * FROM `user` WHERE age in ( 12 , 18 ) ?;
? ? ? ? ?user : 表名
? ? ? ? ?age ?: 字段名
? ? ? ? ?in ? ?: 操作符 ??作用是為查詢條件規(guī)定多個值
? ? ? ? ?從user表中查詢出年齡為12歲和18歲的人所有信息。 相當于并集。
? ? ?
? ? ?5、模糊查詢 ?like
? ? ? ? ??SELECT * FROM student WHERE phone LIKE '1825%'
? ? ? ? ?student : 表名
? ? ? ? ?phone ? : 字段名 代表手機號
? ? ? ? ?LIKE ? ? : 模糊查詢
? ? ? ? ?% ? ? ? ?: 代表任意一個或多個字符 ,?可匹配任意類型和長度的字符。
? ? ? ? ?從student表中查出以1825開頭的手機號
?
? ? ? ? ??SELECT * FROM student WHERE phone LIKE '182%' AND `name` LIKE 'zhang%' ? ;
? ? ? ? ?student :?表名
? ? ? ? ?phone ? : 字段名 代表手機號
? ? ? ? ?name ? : ?字段名 ?代表名字
? ? ? ? ?從student表中查出以182開頭的手機號并且 名字是以zhang開頭的所有信息
?
? ? ? ? ?SELECT * FROM student WHERE phone LIKE '1825110114_'
? ? ? ? ?student : 表名
? ? ? ? ?phone ? : 字段名 代表手機號
? ? ? ? ?LIKE ? ? : 模糊查詢
? ? ? ? ?_ ? ? ? ? : ?代表一個字符
? ? ? ? 從student表中查出以1825110114開頭的手機號
?
? ? ? ??SELECT * FROM student WHERE phone LIKE '%114%' ;
? ? ? ??student : 表名
? ? ? ? ?phone ? : 字段名 代表手機號
? ? ? ? ?LIKE ? ? : 模糊查詢
? ? ? ?% ? ? ? ?: 代表任意一個或多個字符 ,?可匹配任意類型和長度的字符。
? ? ? ? ?從student表中查出手機號包含114的所有信息
?
? ? ? ?SELECT * FROM student WHERE phone LIKE '%114\%' ?;
? ? ? ?student : 表名
? ? ? ? phone ? : 字段名 代表手機號
? ? ? ? LIKE ? ? : 模糊查詢
? ? ? ??% ? ? ? ?: 代表任意一個或多個字符 ,?可匹配任意類型和長度的字符。
? ? ? ? 從student表中查出以114%結尾的手機號 , 第一個?% 代表通配符 ,?\% 代表% 字符,沒有通配符的功能
?
? ? ?6、數(shù)量限制查詢 limit?
? ? ? ??select * from user order by id limit 3 , 5 ;
? ? ? ? ?從user表中查詢 從3開始(包括3),數(shù)量為5 條數(shù)據(jù)。也就是3、4、5、6、7 條數(shù)據(jù)
? ? ? ? ?注意5代表的是查詢的數(shù)量
?
? ? ?7、單字段排序查詢 ??order by ?
? ? ? ? ? *?order by ?語句用于根據(jù)指定的列對結果集進行排序。
? ? ? ? *?order by ?語句默認按照升序?qū)τ涗涍M行排序。
? ? ? ? ? ?select * from ?mydb.`user` order by age ;
? ? ? ? ?mydb : 數(shù)據(jù)庫名
? ? ? ? ?user ?: 表名
? ? ? ? ?age ? : 排序字段
? ? ? ? ?從user表中查詢所有的信息,查詢結果按照 age 字段排序。(默認升序)
? ? ? ? ?
? ? ? ? ?select * from ?mydb.`user` order by age DESC ; ?
? ? ? ? ?從user表中查詢所有的信息,查詢結果按照 age 字段降序排序。
?
? ? ? 8、多字段排序查詢 ??order by?
? ? ??? ? ? select * from ?mydb.`user` order by age DESC , `name` ; ?
? ? ? ? ??mydb ?:數(shù)據(jù)庫
? ? ? ? ??user ? :表名
? ? ? ? ??age ? ?:年齡
? ? ? ? ??name ?:名字
? ? ? ? ? 從user表中查詢所有的信息,查詢結果按照 age 降序排序。如果年齡相同,就按照name,升序排序 。?
? ? ?
? ? ? 9、求總 count()
? ? ? ? ?SELECT COUNT( name ) FROM `user`? ?;
? ? ? ? ?name : 字段名,代表名字
? ? ? ? ?user ?: ?表名
? ? ? ? ?從user表中查詢?name 值得數(shù)目,不計 null 值。
? ? ? ? ?
? ? ? ? ?SELECT COUNT( * ) FROM `user` ;
? ? ? ? ?查詢user表中的記錄數(shù)
? ? ? ??
? ? ? ? ?SELECT COUNT( DISTINCT `name` ) FROM `user` ;
? ? ? ? ?查詢user表中name字段不同值的數(shù)目,相當于去重。
?
? ? ?10、求最大值 max() 和 最小值 min()
? ? ? ? ? ?*MIN 和 MAX 也可用于文本列,以獲得按字母順序排列的最高或最低值。
?
? ? ? ? ? ?SELECT MAX( id ) FROM `user` ;
? ? ? ? ?從user表中查詢 id 字段的最大值
?
? ? ? ? ?SELECT MIN( id ) FROM `user` ;
? ? ? ? ?從user表中查詢 id 字段的最小值
? ? ? ?
? ? ?11、求和 sum() ?
? ? ? ? ??SELECT SUM( id ) FROM `user` ;
? ? ? ? ??id ? ? : 字段名
? ? ? ? ??user : 表名
? ? ? ? ? 查詢user表中 id 值的和
?
? ? 12、求平均值 ?avg()?
? ? ? ? ?SELECT AVG( id ) FROM `user` ;
? ? ? ? ?id ? ? : 字段名
? ? ? ? ?user : 表名
? ? ? ? ?查詢user表中 id 值的平均數(shù)
? ? ? ? ? ? ?
? ? ?13、顯示所有數(shù)據(jù)庫
? ? ? ? ? SHOW DATABASES;
? ? ??
? ? ?14、顯示所有的表
? ? ? ? ?SHOW TABLES;
? ? ?
七:視圖
? ? ? ? ?1、視圖的基本概念
? ? ? ? ? ??http://www.cnblogs.com/zzwlovegfj/archive/2012/06/23/2559596.html
?
? ? ? ? ?2、創(chuàng)建一個視圖
? ? ? ? ? ? ??CREATE VIEW myview as SELECT * FROM mydb.`user` ;
? ? ? ? ? ??myview :視圖的名字
? ? ? ? ? ? mydb ? ?:數(shù)據(jù)庫的名字
? ? ? ? ? ? user ? ? : ?表的名字
? ? ? ? ? ??查詢user表的所有數(shù)據(jù),作為視圖myview的數(shù)據(jù)?
? ?
? ? ? ?3、刪除視圖
? ? ? ? ? drop view myview ;
? ? ? ? ??myview : 視圖的名字
?
?
?
? ??
總結
以上是生活随笔為你收集整理的MySQL 常见的sql命令的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JavaSE 和 JavaEE 的关系
- 下一篇: 常用的云服务器,云数据库,高速缓存服务器