mysql

1.stu_age smallint unsigned not null

   <1>:smallint 指的是无符号,都是正数。

   <2>:not null表示该字段允许为空值。

2创建student表

.

向表中插入:

创建成绩表:

向成绩表中插入

(1)查询所有学生的成绩

或者select t.stu_id,t.stu_name,t.stu_age,t.stu_sex,g.stu_score from student t inner join grade g on t.stu_id=g.syu_id;

(2)查找某位学生的成绩

  (3)匹配原则:

ike要求整个数据都要匹配,regexp只需要部分匹配即可,用like必须这个字段的所有内容满足条件,而regexp只需要任何一个片段满足。

找出以b开头的名字:select * from pet where name like  "b%";  

找出以fy结尾的名字:select * from pet where name like "%fy";

找出包含w的名字:select * from pet where name like "%w%";

regexp和 not regexp匹配:

找出以“b”开头的名字,使用“^”匹配名字的开始并且“[bB]”匹配小写或大写的“b”:

select * from pet where name regexp "^[bB]";

找出以“fy”结尾的名字,使用“”匹配名字的结尾:select∗frompetnameregexp"fy”匹配名字的结尾:select∗frompetnameregexp"fy";

[^……],匹配不包含在[]的字符,如查询出除了w/z/s开头之外的人名

select name from 表名 where name regexp '^[^wzs]';

为了找出包含正好5个字符的名字,使用“^”和“$”匹配名字的开始和结尾,和5个“.”实例在两者之间:

SELECT * FROM pet WHERE name REGEXP  '^.....$';

或者select * from pet where name regexp '^.{5}$';

匹配abc任意一个

select * from pet where  name regexp ‘[abc]’;

(4)限制一行

(5)匹配查询 查询出以n为结尾的数据

(5)匹配查询 查询出以y为开头的数据

(6)匹配查询 查询出以y为开头的数据

(7)匹配查询 查询出以n为结尾的数据

(8)使用正则表达式进行查询

(9)触发器(trigger)是由事件来触发某个操作

当学生表中增加了一个学生的信息时,学生的总数就必须同时改变。可以在这里创建一个触发器,每次增加一个学生的记录,就执行一次计算学生总数的操作。这样就可以保证每次增加学生的记录后,学生总数是与记录数是一致的。触发器触发的执行语句可能只有一个,也可能有多个。

创建只有一个执行语句的触发器:

create trigger  触发器名 before| after 触发事件 on  表名  for each row 执行语句;

创建多个执行语句的触发器:

create trigger 触发器名 before|after 触发事件 on 表名 for each row begin 执行语句列表 end;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值