SQL学习笔记1
参考http://www.w3school.com.cn/sql/sql_syntax.asp 非常感谢作者的奉献
SQL分为两个部分:数据操作语言(DML)和数据定义语言(DDL)
SQL的DML部分:
- select 从数据库表中获取数据
- update 更新数据库表中的数据
- delete 从数据库表中删除数据
- insert into 向数据库中插入数据
- use sql_name 进入某个数据库2
SQL的DDL部分使我们有能力创建或删除表格。我们也可以定义索引,规定表之间的链接,以及施加表间的约束。
- create database 创建新数据库
- alter database 修改数据库
- create table 创建新表4//create table 名称 (iD int, name varchar(100),…,);
- alter table 变更(改变)数据库
- drop table 删除表
- create index 创建索引(搜索键)
- drop index 删除索引
- show database 查看有哪些数据库,一开始现这步1。
- show tables 看有哪些表3
-
SQL SELECT语句
select 语句用于从表中选取数据,结果被存储在一个结果表中(称为结果集)
select * from 表名称 // ’ * ’ 是所有列的快捷键
select 列名称 from 表名称 -
SQL SELECT DISTINCT
在表中,可能会包含重复的值.这并不成问题,有时也许希望仅仅列出不同(distinct)的值.
语法:select distinct 列名称 from 表名称
使用select * from persons;列出全部,有重复;
select distinct address from persons; -
SQL WHERE 子句
如需有条件的从表中选取数据,可将WHERE子句添加到select语句。
语法; select 列名称 from 表名称 where 列 运算符 值;
使用where子句,如果只希望在persons中选取nanjing的人:
select * from persons where address=‘nanjing’;
引号的使用:如果是文本select * from persons where address=‘nanjing’;
如果是数字select * from persons where id=1; -
SQL AND &OR运算符
and 和 or 可在我和热子句中把2个或多个条件结合起来。
如果第一个条件和第二个条件都成立,则and运算符显示一条记录;
如果第一个条件和第二个条件中只要有一个成立,则or运算符显示一条记录。
原始表如下:
用and来显示id为2,name为jay的人。
select * from persons where id=2 and name=‘jay’;结果如下:
select * from persons where id=2 or name=‘jay’;
select * from persons where (name=‘jay’ or name=‘bads’) and id=2; -
SQL ORDER BY
ORDER BY 语句用于根据指定的列对结果集进行排序,默认按照升序对记录进行排序。如果希望按照降序对记录进行排序,可以使用DESC关键字。
例1.按照人名的字母顺序显示:
select id,name from persons order by name;
例2.按照逆字母顺序显示人名:
select id,name from persons order by name desc;
例3.按照id逆序 并 按照人名顺序显示:
select id, name from persons order by id desc,name; -
SQL INSERT INTO
INSERT INTO 语句用于向表中插入新的行。
语法:insert into 表名 values(值1,值2,… … …);
在指定的列中插入数据:例如
insert into persons (id,name) values (5,‘cha’); -
SQL UPDATE语句
updata 语句用于修改表中的数据。
语法:update 表名称 set 列名称=新值 where 列名称 = 某值;
例:更新上述id=5的行,address添加wenzhou ;tel添加18757199107;
update persons set address=‘wenzhou’, tel=‘18757199107’ where id =5;//更新某一行中的若干列。
SQL DELETE
delete语句用于删除表中行。
语法:delete from 表名称 where 列名称=值。
例如:删除name=bads的这一行
delete from persons where name=‘bads’;
删除表的所有行,可以在不删除表的情况下删除所有的行,这意味着表的结果,属性和索引都是完整的:
delete from persons;