MySQL的做表查表

众所周知,MySQL作为对数据库的操作软件之一,会使用也是必不可少的,今天我们使用MySQL来进行单表查询。

现在我们自己再MySQL中制作一张表,然后进行查询。其实这是一个非常有意思的事,做出来并且查出来是非常自豪的,下面让我们开始吧!

第一步:做表格,如上一篇所说,制作表格:

     (1).建立一个数据库,在此数据库里添加表格,步骤如下图所示:

             建立;一个名为haha的数据库 ,create database db_haha default character set=utf8mb4:

         (2)(使用数据库,创建表格。use db_haha;  create table `worker`;  如下图所示;

           (3)手动插入数据,replace into worker values();如下图所示:

第二步:查询数据:

      (1)显示所有职工的基本信息。 select * from worker;  如下图所示:

          (2)查询所有职工所属部门的部门号,不显示重复的部门号 select distinct 部门号 from worker;  如下图所示:

(3)查询所有员工的人数 select count (*) from worker;  如下图所示:

(4)查询出最高工和最低工资 select max(工资),min(工资) from worker;如下图所示:

(5)查询并计算出职工的平均工资和总工资 ,select sum(工资),avg(工资) from worker; 如下图所示:

(6)创建一个只有职工号、姓名和参加工作的新表,名为工作日期表 create table worktime select 职工号,姓名,工作时间 from worker;   查看worktime是否创建成功: select * from worktime;   如下图所示: 

(7)显示所有女职工的年龄,select 2019-(出生日期) as 年龄 from worker;  如下图所示:

(8)列出所有姓刘的职工的职工号、姓名和出生日期  select 职工号,姓名,出生日期 from worker where 姓名 like '张';  如下图所示:

(9)列出1960年以前出生的职工的姓名、参加工作日期  select 姓名,工作时间 from worker 出生日期 < 1990-01-01;   如下图所示:

(10)列出工资在20000-40000之间的所有职工姓名 select 姓名 from 工资 between 200000 and 40000; 如下图所示: 

(11)列出所有张姓和李姓的职工姓名 select 姓名 from wroker where 姓名 like '张%' or 姓名 like '李%';   如下图所示:

(12)列出所有部门号为2和3的职工号、姓名、党员否 select 职工号,姓名,政治面貌 from worker where 部门号 like '%2' and 政治面貌 like '党员';  如下图所示:

(13)将职工表worker中的职工按出生的先后顺序排序,select * from order by 出生日期 asc;  如下图所示:

(14)显示工资最高的前3名职工的所有信息,select * from worker order by 工资 desc  limit 3; 如下图所示:

(15)统计各部门的工资和平均工资,select 部门号,sum(工资),avg(工资) from worker group by 部门号;  如下图所示:

(16)列出总人数大于4的部门号和总人数 ,select 部门号,count(*) from worker

                                                                          group by 部门号

                                                                          having count(*) > 3;。

### 如何在 MySQL数据库和字段 #### 询特定数据库中的所有 为了获取指定数据库内的全部格名称,可以通过 `information_schema.TABLES` 进行检索: ```sql SELECT table_name FROM information_schema.tables WHERE table_schema = '目标数据库名'; ``` 此命令会返回给定数据库内所有的名列[^2]。 #### 获取单个里的列详情 如果想要了解某张的具体结构及其各列的信息,则可利用如下 SQL 语句来实现这一目的: ```sql SHOW COLUMNS FROM 数据库名.名; ``` 这条指令不仅能够显示出每列的名字,还会提供有关其数据类型的额外细节,比如是否允许为空等属性[^1]。 #### 统计整个数据库里所有的字段总数 对于统计一个完整的数据库中各个所含有的字段数目而言,下面这段代码可以帮助完成这项工作: ```sql SELECT COUNT(column_name) AS total_columns FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = '目标数据库名'; ``` 这将给出一个数值示该数据库下所有加起来拥有的字段数量总和。 #### 找含有特定字段名的所有 当需要知道哪一个或哪几个包含了某个特别命名的字段时,可以执行这样的询操作: ```sql SELECT DISTINCT table_name FROM information_schema.columns WHERE table_schema='您的数据库名字' AND column_name='您要找的字段名'; ``` 上述脚本将会列出那些拥有指定字段名称的所有的名字[^3]。 #### 展示某一数据库下的所有及其字段信息 最后,若是要看一个数据库内部每一个连同它们各自具有的每一项字段的相关资料(包括但不限于类型),则应该采用这个较为全面的方式来进行探索: ```sql SELECT TABLE_NAME, COLUMN_NAME, DATA_TYPE, CHARACTER_MAXIMUM_LENGTH, IS_NULLABLE, COLUMN_DEFAULT, EXTRA FROM information_schema.COLUMNS WHERE TABLE_SCHEMA = '关注的数据库名称' ORDER BY TABLE_NAME ASC; ``` 这样就可以得到一张详尽的结果集,其中涵盖了选定范围内每个与其关联字段的关键特性描述[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值