基本SQL操作

CREATE DATABASE my;/*创建数据库*/

SHE DATABASES/*查看所有数据库*/

use my;/*切换数据库*/


CREATE TABLE car
(	
	cid INT NOT NULL PRIMARY KEY AUTO_INCREMENT,/*整型,非空,主键,自动增长*/
	name VARCHAR(10) NOT NULL,
	num INT NOT NULL DEFAULT 1,/*默认值*/
	price DEC(5,2),/*整体长度5,小数点后占2位*/
	comment BLOB,/*大文本*/
	time DATE/*时间*/
);

DESC car;/*查询数据库结构*/
SHOW CREATE TABLE car;/*查询数据库建立语句*/

INSERT INTO car(name,price)VALUES('汽车',100);/*按照列名依次输入数据*/
INSERT INTO car(price,name)VALUES(200,'轿车');/*可以反序*/
INSERT INTO car(name,num,price)VALUES('卡丁车',5,300);
INSERT INTO car(name,num,price)VALUES('法拉利',10,500);
INSERT INTO car /*不给定列,需要严格按照建表顺序将所有值输入*/
	VALUES
	(
		'保时捷',
		5,
		400,
		'两''个\'转义',/*单引号作为保留符号,用转义符表示*/
		'2015-7-18'
	);	

SELECT name ,num ,price,comment
	FROM car 
		WHERE num>1
				AND num<100
				AND comment IS NULL/*不能用=NULL判断空*/
			OR price=200
	GROUP BY num/*分组*/
	ORDER BY price DESC,name ASC;/*先按照price反序排序,如果相同按照name顺序排序,ASC可以省略*/

SELECT * FROM car /*选取所有列*/
WHERE name LIKE '%车' /*  % 匹配任意数量字符*/
OR name LIKE'_拉利';  /* _匹配一个字符*/


SELECT RIGHT(name,2),SUBSTRING_INDEX(name,'车',1),num/*分别是,截取右边两个字符,找到第1个'车',返回前面所有字符*/
FROM car
WHERE num IN(3,7,12);/*判断在这个集合中*/

UPDATE car
SET time='2015-7-19'
WHERE time IS NOT NULL;/*判断非空*/

UPDATE car
SET num=/*使用CASE语句*/
CASE 
	WHEN num=1 THEN 2
	WHEN num=5 THEN num+3
	ELSE num
END;

SELECT name Name,SUM(price) AS sum_price/*列名取别名两种方式,SUM求和,AVG平均值,MAX最大值*/
FROM car Car
GROUP BY name
ORDER BY SUM(price)
LIMIT 0,3;/*从第0行计数,到第3行(不包括),也可以 limit 3 显示前三列*/

CREATE TABLE c(ID CHAR);

ALTER TABLE c ADD COLUMN x CHAR;/*增加列*/
ALTER TABLE c CHANGE COLUMN x cx INT;/*改变列名和属性*/
ALTER TABLE c MODIFY COLUMN cx CHAR;/*改变列值类型*/
ALTER TABLE c DROP COLUMN cx;/*删除列*/
ALTER TABLE c RENAME  ce;/*改表名*/

DROP TABLE ce;/*删除表*/

CREATE TABLE _car
(
	id INT NOT NULL PRIMARY KEY AUTO_INCREMENT
)
SELECT name ,price FROM car
	GROUP BY name
	ORDER BY name; 

版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-07-19 09:29  Thereisnospon  阅读(154)  评论(0编辑  收藏  举报