SELECT获取数据,查询语句
select name(列名) from admin(表名)
DISINCT,配合SELECT使用,作用,去除重复部分。
select disinct name from admin (from后面是存储数据(列名)的数据库表)
WHERE字句,SELECT * from person where name="红尘" 查询列名是红尘的来自person表。
//where是条件语句
用于条件搜索:select * from person where like='jack'//搜索关键字jack
AND&OR AND是并列关系,两者都需要满足,OR是或的意思,两者满足其一。
关于order by
order by字母的排序方式是以:A,B,C,D......Z这种,越靠前就排序靠前。
order by数字的排序方式是以:1,2,3,4,5,6....这种,越靠前排序靠前。
order by字母和order by数字同时排序的时候,排序的方式:字母的排序大于数字的排序!所以排序先看字母,字母越靠前顺序就最前面!假如字母的位数都相同,比较数字的话,那么数字越小的越靠前。
SQL语句对大小写不敏感,ORDER BY也是可以。
反之desc(DESC)是反序排列,排序方法与正序排列雷同。
insert into语句,含义:像表格中插入新的一行数据
insert into admin(表名) values('红尘','男','red','apple')
*要已知表名是admin并且admin表是四列!
insert into admin('姓名','性别') values('红尘','男');//指定插入一行数据,你得知道表中的列名。
update 含义:修改表中的数据
update 表 set(创建) name=jack(新值) where people(列名)=man
update admin set name=jack where people=man
delete语句
delete from admin(表名) where name(列名)=jack
//删除表中列名为jack的一行。
delete * from table_name
//删除所有行
Top子句,Limit子句,ROWSUM子句
不是所有数据库都支持top字句,支持top的只有mssql数据库(sql server数据库)
top的用法有两种:
1、select top 2 * / 指定某一个列名(columns_name) from admin(表名) //注释top的含义自我翻译了下,含义很多,感觉最标准就是在...的前头,这里的含义就是查询所有列名中的前两行的数据记录行来自表名 (admin) / 查询前二行的指定列名下的数据内容来自表名(admin)。
2、select top 50percent * / 指定某一个列(columns_name)from admin(表名) //查询前百分之50的所有列下的数据记录行来自admin(表) / 查询前百分之50的指定列名下的数据来自admin(表)。
与top用法相同的是limit字句,limit适用于mysql,它是支持mysql数据库的。
limit详细用法:
1、select * / 列名(columns_name) from admin(表名) limit 5 //查询前5行的所有列下的数据记录行来自admin(表) / 查询前5行的指定列名下的数据来自admin(表)。2、select * / 列名(columns_name) from admin(表名) limit 5,10 //查询前6行-15行的所有列下的数据记录行来自admin(表) / 查询前5行-15行的指定列名下的数据来自admin(表)。//limit5,10起始是5开始,变成6,因为返回的是所有记录,所以10要加上起始的5就是15。举例:limit 3,6就是前4行-9行。是limit (初始值+1) (初始值+末尾值)使用limit注意点:
limit不可以是负数!limit初始值是0不是1
limt 0相当于limit 0,n。
取决于第二位数。
与top,limit雷同的语句是:ROWNUM,rownum支持oracle数据库。
用法:select * from admin(表) where rownum<=5
这里的rownum使用方式比较奇怪,它是跟在where子句上的,是条件语句执行的。
rownum初始值是1,rownum=1就是显示表中的第一行,顾名思义,2就是显示表中的前二行。但是写法上就有点不一样。
假如写成rownum=2,这样写看上去是对的,但是oracle语法不支持这种写法,既然是限制,那么我想显示表中前二行的记录行,那么应该是rownum<=2,这里的意思就是返回前面二行的记录行,<在这里有种过去的意思。
LIKE操作符,比较好理解,不像上面的那些好抽象。
用法有四种:
1、select * from admin(表名) where name(列名) like 'j%' //查询搜索来自admin表中以j开头name(列名)的人
2、select * from admin(表名) where name(列名) like '%j' //查询搜索来自admin表中以j末尾的name(列名)的人
3、select * from admin(表名) where name(列名) like '%jack%' //查询搜索来自admin表中包含jack的name(列名)的人
4、select * from admin(表名) where name(列名) not like '%jack%' //查询搜索来自admin表中不包含jack的name(列名)的人
-- %是SQL的通配符
IN操作符,选取表中的内容
用法:select * from admin(表) where name(列名) in('jack','marry') //获取来自admin表中的name列名是jack和marry的数据记录行
BETWEEN操作符
between..and的含义就是选取两个值之间的数据范围,选取的两个值可以是数字,也可以是字母。
用法:
1、select * from admin where name between 'jack' and 'abc' //查询来自admin表中列名是在jack和abc之间的数据记录行
2、也可以用大小于号代替BETWEEN
用法如下:select * from admin where number>10 and number<20 //查询来自admin表中number(列名)是在大于10和小于20的之间的数据记录行
这些都是选取两个值之间的数据范围,一切都是两面性,还有不选取两个值之间的数据范围,它就是not between,
not between用法和between用法雷同