mysql数据库搜索实例

Posted 一直都是瑾凉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql数据库搜索实例相关的知识,希望对你有一定的参考价值。

mysql 数据库搜索实例练习(基础练习):

先再MySQL数据库中建两个表,实例如下:

CREATE TABLE student(
    stuNo CHAR(8) PRIMARY KEY,
    stuName VARCHAR(50) NOT NULL,
    stuage TINYINT NOT NULL,
    stuSex TINYINT,
    birthday DATETIME
);


INSERT INTO student VALUES(‘10011011‘,‘张三‘,19,1,‘1997-1-1 1:1:1‘);
INSERT INTO student VALUES(‘10011012‘,‘张小亮‘,20,0,‘1996-1-1 1:1:1‘);
INSERT INTO student VALUES(‘10011013‘,‘李四‘,16,0,‘1999-1-1 1:1:1‘);
INSERT INTO student VALUES(‘10011014‘,‘小李四‘,18,1,‘1998-1-1 1:1:1‘);
INSERT INTO student VALUES(‘10011015‘,‘小强‘,21,1,‘1994-1-1 1:1:1‘);
INSERT INTO student VALUES(‘10011016‘,‘赵玉‘,22,1,NULL);
INSERT INTO student VALUES(‘10011017‘,‘王五‘,25,1,‘1991-1-1 1:1:1‘);
INSERT INTO student VALUES(‘10011018‘,‘小六‘,17,0,‘2000-1-1 1:1:1‘);

CREATE TABLE stuscore(
    scoreNo CHAR(6) PRIMARY KEY,
    stuNo CHAR(8) NOT NULL,
    javaScore TINYINT NOT NULL,
    htmlScore TINYINT NOT NULL
);


INSERT INTO stuscore VALUES(‘200101‘,‘10011011‘,73,84);
INSERT INTO stuscore VALUES(‘200102‘,‘10011012‘,77,69);
INSERT INTO stuscore VALUES(‘200103‘,‘10011013‘,89,92);
INSERT INTO stuscore VALUES(‘200104‘,‘10011014‘,62,84);
INSERT INTO stuscore VALUES(‘200105‘,‘10011015‘,41,31);
INSERT INTO stuscore VALUES(‘200106‘,‘10011016‘,37,50);
INSERT INTO stuscore VALUES(‘200107‘,‘10011017‘,90,88);
INSERT INTO stuscore VALUES(‘200108‘,‘10011018‘,85,72);

(##数值时随意添加的)

搜索实例如下:

-- 查询所有学员信息
SELECT * FROM student;
-- 查询stuno为10011012的学生姓名
SELECT  stuname FROM  student WHERE stuno=‘10011012‘;
-- 查询stuno为10011014和10011016的学生信息
SELECT * FROM  student WHERE stuno=‘10011012‘ OR stuno=‘10011016‘;
-- 查询所有年龄在20岁以上的学生编号
SELECT stuno FROM student WHERE stuage>20;
-- 查询所有生日为空的学生信息
SELECT * FROM student WHERE birthday IS NULL;
-- 查询所有姓小的学生信息
SELECT * FROM student WHERE stuname LIKE‘小%‘;
-- 查询所有姓名中第二个字是小的学生信息
SELECT * FROM student WHERE stuname LIKE ‘_小%‘;
-- 查询所有姓名中带小的学员信息
SELECT * FROM student WHERE stuname LIKE ‘%小%‘
-- 查询所有姓小的名字为2个字的学生信息
SELECT * FROM student WHERE stuname LIKE ‘小_‘;
-- 查询所有学生姓名及年龄并按年龄升降序排列
SELECT stuname,stuage FROM student WHERE stuage ORDER BY stuage;
SELECT stuname,stuage FROM student WHERE stuage ORDER BY stuage DESC;
-- 查询所有姓小的学生信息按年龄降序排列
SELECT * FROM student WHERE stuname LIKE ‘小%‘ ORDER BY stuage;
-- 查找java成绩最高的学生编号
SELECT  stuNo FROM stuscore WHERE javaScore=(SELECT MAX(javaScore)FROM stuscore);
-- 查询所有html成绩在平均分以上的学生编号
SELECT  stuNo FROM stuscore WHERE htmlScore>(SELECT AVG(htmlScore)FROM stuscore);
-- 查询所有学生姓名、两科成绩
SELECT a.stuname,b.javaScore,b.htmlScore
FROM student a,stuscore b
WHERE a.stuNo=b.stuNo;
-- 查询java成绩最高的学生信息
SELECT * FROM student a,stuscore b
WHERE javaScore=(SELECT (MAX(javaScore)) FROM  stuscore)
AND a.`stuNo`=b.`stuNo`;
-- 查询所有java成绩大于html成绩的学生姓名
SELECT stuname FROM student a,stuscore b
WHERE b.`javaScore`>b.`htmlScore`
AND a.`stuNo`=b.`stuNo`;
-- 查询所有姓小的学生的姓名以及两科成绩并按年龄降序排列
SELECT a.stuname,b.javascore,b.htmlscore
FROM student a,stuscore b
WHERE a.`stuNo` = b.`stuNo

 














































































以上是关于mysql数据库搜索实例的主要内容,如果未能解决你的问题,请参考以下文章

如何在阿里云主机上安装mysql

使用ElasticSearch服务从MySQL同步数据实现搜索即时提示与全文搜索功能

mysql连接数据库时报2003错误怎么解决

AWS RDS 大型实例上的 MySQL 全文搜索速度极慢

大快搜索数据爬虫技术实例安装教学篇

MySQL单机多实例配置实战