mysql知识
1.Limit 在语句的最后,起到限制条目的作用
Limit [offset,] [N]
offset:偏移量
N:取出条目
例子:select * from stu limit 3,3;
2.左连接,右连接等
左连接,以左表为准,去右表找匹配的数据,不匹配的项则为NULL
左连接(left)写法:
select 列1,列2,列N from
tableA left join tableB
on tableA 列 = tableB 列 [此处表连接成一张大表,完全当成普通表看]
Where group,having 照常写
右连接,以右表为准,去左表找匹配的数据,不匹配的项则为NULL
右连接(right)写法:
select 列1,列2,列N from
tableA right join tableB
on tableA 列 = tableB 列 [此处表连接成一张大表,完全当成普通表看]
Where group,having 照常写
内连接(inner)写法:
select 列1,列2,列N from
tableA inner join tableB
on tableA 列 = tableB 列 [此处表连接成一张大表,完全当成普通表看]
Where group,having 照常写
3.列的新增,修改,删除
Create table 表名 (
列名称 列类型 [列属性] [默认值], ----->列声明
列名称 列类型 [列属性] [默认值],
列名称 列类型 [列属性] [默认值],
列名称 列类型 [列属性] [默认值]
) charset = utf8/gbk/...
表增加列,修改列,删除列
增加列:
alter table 表名 add 列声明
增加列默认在最后一列
alter table 表名 add 列声明 after xx
增加列在xx列后面
alter table 表名 add 列声明 first
在第一列增加列
4.存储过程(procedure):
概念类似于函数,就是把一段代码封装起来
当要执行这一段代码的时候,可以通过调用该存储过程来实现
在封装的语句体里面,可以用if/else,case,while等控制结构
可以进行sql编程
查看现有的存储过程
show procedure status;
删除存储过程:
drop precedure 存储过程名字
创建存储过程(例子):
delimiter $
create procedure p5()
begin
select * from stu;
end$
create procedure p6(grade int)
begin
select * from stu where fenshu>=grade;
end$
调用存储过程
call 存储过程名字 ()
修改列
alter table 表名 change 被改变列名 列声明
删除列
alter table 表明 列名