数据库MySQL数据查询

您所在的位置:网站首页 图书编号格式 数据库MySQL数据查询

数据库MySQL数据查询

2024-07-12 16:05| 来源: 网络整理| 查看: 265

数据库MySQL数据查询—模糊查询(like和relike(或regexp)) like和relike(或regexp)的格式:

Like的格式是A(表名) like B(表达式),表示能否用B去完全匹配A的内容,简单来讲like是从头逐一字符匹配的,是全部匹配,返回的结果是True/False。

A(表名) relike B (表达式) ,表示A里边只要含有B即可,B中一般放正则表达式。regexp与其用法相似,即A(表名) regexp B (表达式)。

几种简单的匹配符号:

(1)"_“表示任意单个字符 (2)"%“表示任意数量的字符 (3)如果想在A中匹配字符”_“和”%“或者“;”就需要转义。以“%”为例,即用”\%"(匹配一个%字符)。

大家可以通过以下例子对模糊查询做更进一步的了解: 例一、mySchool数据库中有如下表: 1.student表:学生(学号,密码,姓名,性别,年级编号,电话,地址,出生日期,邮件账号,身份证号);在这里插入图片描述2.subject表:课程表(课程编号,课程名称,学时,年级编号); 在这里插入图片描述

查询河北省的学生的学生姓名、地址、手机号码,列名用汉字显示。 补充一点:这里给属性列起别名一共有三种方式(本人习惯用第一种形式): (1)select C(原来属性名) as 别名 (2)select C(原来属性名) = 别名 (3)select C(原来属性名) 别名 SELECT studentName as 姓名,address as 住址,phone as 手机号 from student where address like'河北%'; 查询姓李的男生信息。 SELECT * from student where studentName like'李%' and sex='男'; 查询名字中包含“萍”字的女生信息。 SELECT * from student where studentName like'%萍%' and sex='女'; 查询名字中第二个字为“秋”的学生信息。 SELECT * from student where studentName like'_秋%'; 查询课程名第一个字符为“j”,第二字字符为“a”或“s”的课程信息。 SELECT * from subject where subjectName regexp '^j[as]'; 查询课程名中包含“_”(下划线)的课程信息。 SELECT * from subject where subjectName like '%\_%';

例二、mySchool数据库中有如下表: 1.book表:图书(图书编号,书名,作者姓名,出版社,出版日期,现存数量,单价) 在这里插入图片描述 2.reader表:读者(读者编号,读者姓名,已借数量,联系地址) 在这里插入图片描述 3.pentlay表 罚款记录表(读者编号,图书编号,罚款日期,罚款类型,罚款金额)在这里插入图片描述

查询图书名以“欣赏”结尾的图书信息。 SELECT * from book where bname regexp '欣赏$'; 查询图书名中包含“数据库”的图书编号、图书名、出版社、单价,列名以汉字显示。 SELECT bid as 图书编号,bname as 图书名,pubcomp as 出版社,price as 单价 from book where bname regexp '数据库'; 检索读者名中第三个字为“伟”的读者信息。 SELECT * from reader where rname like '__伟'; 查询姓张的和姓王的读者信息。 SELECT * from reader where mname regexp'^[张王]'; 查询罚款金额大于5元的罚款记录,输出读者编号、图书编号、罚款日期、罚款类型、罚款金额和一列“已处理”,最后一列的列名为“处理情况”,其他列的列名使用汉字。 SELECT rid as 读者编号,bid as 图书编号,pdate as 罚款日期,ptype as 罚款类型,amount as 罚款金额 ,'已处理' as 处理情况 from penalty where amount>5 ;


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3