基于mysql数据库的应用_MySQL数据库应用

参考资料:

准备软件:mysql-5.5.13-win32.msi、MySQL安装图解.doc、Navicat_for_MySQL_10.0.5.0_XiaZaiBa.exe、mysqldriver.jar、eclipse

MySQL基本操作

登陆:mysql -u 用户名 -p 密码

显示数据库:show databases;

使用数据库:use 数据库名;

显示所有表:show tables;

新建数据库:create database 数据库名;

建新表:

create table student1(

id int not null auto_increment primary key,

name varchar(10),

age int(2),

sex varchar(5) default 'man'

);

显示建表信息:desc 表名;

删除数据库:drop database 数据库名;

删除表:drop table 表名;

增加字段:alter table 表名 add 字段名 类型;

删除字段:alter table 表名 drop 字段名;

查看字段:desc 表名;

修改字段:alter table 表名 change 字段名 新字段名 新数据类型;

显示表的编码:show create table 表名;

修改表的编码:alter table 表名 default charset utf8;

MySQL字段查询

查询所有: select * from 表名;

分页查询: select 字段 from 表名 limit 从第几条开始,页长;

条件查询:

select 字段 from 表名 where 条件;

select 字段 from 表名 where 数据 between 最小值 and 最大值;

模糊查询:   %:零个或多个字符    _ : 一个任意字符

select * from employee where first_name like '%jack%';

in 子语:select * from employee where emp_no in (10010,10200,10205);

count()函数:  max();  min();   avg();   sum();

order by 排序:  asc 升序,desc降序

分组函数: group by

MySQL多表查询

左右连接:select * from t1 right join t2 on t1.id=t2.id;

内连接: select * from t1,t2 where t1.id = t2.id;

外连接:

select * from t1 full join t2;--数据交叉相乘

select * from t1,t2;

习题

#1、查出男员工的人数

SELECT COUNT(*) FROM employees WHERE gender='M';

#2、查出1998年8月1号——10号入职的员工,升序排列。

SELECT * FROM employees WHERE

employees.hire_date BETWEEN '1998-08-01' AND '1998-08-10'

ORDER BY

employees.hire_date ASC

#3、查出最高工资员工名字及所在部门

SELECT employees.emp_no,employees.first_name,employees.last_name,departments.dept_name,salaries.salary

FROM dept_emp,employees,departments,salaries WHERE salaries.salary=(

SELECT MAX(salary)FROM salaries

)AND dept_emp.emp_no=salaries.emp_no AND employees.emp_no=salaries.emp_no AND departments.dept_no=dept_emp.dept_no

#4、查找各部门经理的员工id、名字、部门

SELECT employees.emp_no,employees.first_name,employees.last_name,departments.dept_name

FROM employees,departments,dept_manager WHERE

departments.dept_no=dept_manager.dept_no AND employees.emp_no=dept_manager.emp_no

AND EXISTS(SELECT emp_no FROM dept_manager WHERE EXISTS(SELECT * FROM employees.departments))

#5、找最早入职的员工

SELECT * FROM employees.employees WHERE employees.employees.hire_date=(

SELECT MIN(employees.employees.hire_date) FROM employees.employees)

#6、找出工资最高的部门经理

SELECT employees.emp_no,employees.first_name,employees.last_name,departments.dept_name,salaries.salary

FROM dept_manager,employees,departments,salaries WHERE salaries.salary=(

SELECT MAX(salaries.salary)

FROM employees,departments,dept_manager,salaries WHERE

departments.dept_no=dept_manager.dept_no AND employees.emp_no=dept_manager.emp_no AND salaries.emp_no=dept_manager.emp_no

AND EXISTS(SELECT emp_no FROM dept_manager WHERE EXISTS(SELECT * FROM employees.departments))

)AND dept_manager.emp_no=salaries.emp_no AND employees.emp_no=salaries.emp_no AND departments.dept_no=dept_manager.dept_no

#SQL查询作业@2018-2-8 16:04:52

#10、统计各岗位女员工数(F代表女性)

SELECT departments.dept_name,COUNT(employees.gender) FROM departments,employees,dept_emp

WHERE departments.dept_no=dept_emp.dept_no AND employees.emp_no=dept_emp.emp_no

AND EXISTS(SELECT *FROM employees WHERE gender='F')

GROUP BY departments.dept_name

#12、员工平均工资最高的部门

SELECT departments.dept_name,AVG(salaries.salary) FROM departments,employees,dept_emp,salaries

WHERE departments.dept_no=dept_emp.dept_no AND employees.emp_no=dept_emp.emp_no AND salaries.emp_no=employees.emp_no

GROUP BY departments.dept_name ORDER BY AVG(salaries.salary) DESC LIMIT 1

#13、找出除销售之外的所有员工

SELECT * FROM employees,dept_emp,departments WHERE dept_name!='Sales' AND departments.dept_no=dept_emp.dept_no AND

dept_emp.emp_no=employees.emp_no

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/283224.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

《HeadFirst Python》第一章学习笔记

对于Python初学者来说,舍得强烈推荐从《HeadFirst Python》开始读起,这本书当真做到了深入浅出,HeadFirst系列,本身亦是品质的保证。这本书舍得已在《Python起步:写给零编程基础的童鞋》一文中提供了下载。为了方便大家…

Oracle-13:Oracle中的表分区

------------吾亦无他,唯手熟尔,谦卑若愚,好学若饥------------- 本篇博客记录了表分区 表分区的含义: 典型的拿空间换时间的案例! 表分区对一张表进行分区,分区之后表中的数据存在相对应的分区内(可以是不…

js控制图像等比例缩放

<!DOCTYPE html> <html> <head><title>图片内部放大效果</title> <meta charset"utf-8"> <style type"text/css">#imgborder{ width: 200px;height: 160px;border: 3px solid #000; overflow: hidden;position:…

mysql一张表最多多少索引_MySQL一个索引最多有多少个列?真实的测试例子

MySQL一个索引最多有多少个列&#xff1f;真实的测试例子更新时间&#xff1a;2009年07月01日 22:22:21 作者&#xff1a;MySQL一个索引最多有多少个列&#xff1f;下面是具体的实现代码。最多16列。create table test (f1 int,f2 int,f3 int,f4 int,f5 int,f6 int,f7 int,f8…

.NET Core 使用 LibreOffice 实现 Office 预览(Docker 部署)

前些年做云盘产品的时候&#xff0c;一个很核心的功能就是 Office 文件预览&#xff0c;当时还没有使用 .NET Core ,程序部署在 Windows Server 服务器上&#xff0c;文件预览的方案采用了微软的 OWA 。目前在做的零代码产品中的表单附件控件&#xff0c;同样面临着 Office 文件…

es6(五):函数的扩展

函数参数的默认值 function log(x, y World) {console.log(x, y); }log(Hello) // Hello World log(Hello, China) // Hello China log(Hello, ) // Hellofunction Point(x 0, y 0) {this.x x;this.y y; }var p new Point(); p // { x: 0, y: 0 }函数length 的属性 指定了…

tomcat启动报错:Bean name 'XXX' is already used in this beans element

如题&#xff0c;tomcat容器启动时加载spring的bean&#xff0c;结果报错如下&#xff1a; 六月 28, 2017 9:02:25 上午 org.apache.tomcat.util.digester.SetPropertiesRule begin 警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property source to…

[开源精品] C#.NET im 聊天通讯架构设计 -- FreeIM 支持集群、职责分明、高性能

&#x1f4bb; FreeIM 是什么&#xff1f;FreeIM 使用 websocket 协议实现简易、高性能&#xff08;单机支持5万连接&#xff09;、集群即时通讯组件&#xff0c;支持点对点通讯、群聊通讯、上线下线事件消息等众多实用性功能。 ImCore 已正式改名为 FreeIM。使用场景&#xff…

用websploit获取管理员后台地址

1, use web/dir_scanner 2, set TARGET http://www.****.com 3, run SOURCE: https://sourceforge.net/projects/websploit/ WebSploit Advanced MITM Framework[]Autopwn – Used From Metasploit For Scan and Exploit Target Service[]wmap – Scan,Crawler Target Used Fro…

mysql事务操作_mysql的事务操作

倒着思考。杜绝纯粹的知识填鸭教育少废话&#xff0c;是上代码&#xff1a;update table1 set money-100 where id1; //A账户减少100元update table2 set money100 where id2; //B 账户增加100元问题&#xff1a;这是一个简单的银行转账案例sql&#xff0c;由于服务器等未知原因…

《ASP.NET Core 6框架揭秘》实例演示[16]:内存缓存与分布式缓存的使用

.NET提供了两个独立的缓存框架&#xff0c;一个是针对本地内存的缓存&#xff0c;另一个是针对分布式存储的缓存。前者可以在不经过序列化的情况下直接将对象存储在应用程序进程的内存中&#xff0c;后者则需要将对象序列化成字节数组并存储到一个独立的“中心数据库”。对于分…

高可用架构-- MySQL主从复制的配置

环境 操作系统&#xff1a;CentOS-6.6-x86_64-bin-DVD1.iso MySQL版本&#xff1a;mysql-5.6.26.tar.gz 主节点IP&#xff1a;192.168.1.205 主机名&#xff1a;edu-mysql-01 从节点IP&#xff1a;192.168.1.206 主机名&#xff1a;edu-mysql-02 主机配置&#xff1a;4核CPU、4…

java 数组冒泡排序、转置(降序)

1.java 数组冒泡排序 排序的基本原理&#xff08;升序&#xff09;&#xff1a; 原始数据&#xff1a; 2 、1 、9 、0 、5 、3 、7 、6 、8&#xff1b; 第一次排序&#xff1a; 1 、2 、0 、5 、3 、7 、6 、8 、9 &#xff1b; 第二次排序&#xff1a; 1 、0 、2 、…

人工智能教程007:创建一个卷积神经网络(2)

2019独角兽企业重金招聘Python工程师标准>>> 我们如何对图像应用卷积 当我们在图像上应用卷积时&#xff0c;我们在两个维度上执行卷积——水平和竖直方向。我们混合两桶信息&#xff1a;第一桶是输入的图像&#xff0c;由三个矩阵构成——RGB三通道&#xff0c;其中…

释放mysql ibdata1文件_释放MySQL ibdata1文件的空间

在MySQL数据库中&#xff0c;如果不指定innodb_file_per_table参数&#xff0c;单独存在每个表的数据&#xff0c;MySQL的数据都会存放在ibdata1文件。mysql ibdata1存放数据&#xff0c;索引等&#xff0c;是MYSQL的最主要的数据。步骤&#xff1a;1&#xff0c;备份数据库从命…

【系统知识点】linux入门基础命令

大概总结了一下一些基础命令&#xff0c;仅仅是帮助基础使用linux文件系统&#xff0c;如果还有相关基础命令&#xff0c;希望大家留言一起补充汇总一下&#xff01;命令的基本格式&#xff1a;格式&#xff1a;command [-options] parameter1 parameter2 …ps&#xff1a;第一…

Blazor University (48)依赖注入 —— Scoped 依赖

原文链接&#xff1a;https://blazor-university.com/dependency-injection/dependency-lifetimes-and-scopes/scoped-dependencies/Scoped 依赖Scoped 依赖项类似于 Singleton 依赖项&#xff0c;因为 Blazor 会将相同的实例注入到依赖它的每个对象中&#xff0c;但不同之处在…

c 连接mysql怎么增删改_C++ API方式连接mysql数据库实现增删改查

这里复制的http://www.bitscn.com/pdb/mysql/201407/226252.html一、环境配置1&#xff0c;装好mysql&#xff0c;新建一个C控制台工程(从最简单的弄起&#xff0c;这个会了&#xff0c;可以往任何c工程移植)&#xff0c;在vs2010中设置&#xff0c;工程--属性--VC目录--包含目…

阿里云如何实现海量短视频的极速分发?答案在这里!

摘要&#xff1a;短视频行业目前比较火热&#xff0c;但是如何快速的实现海量短视频的极速分发&#xff0c;对于短视频业务提供方来讲是一个比较棘手的问题。阿里云技术专家将带领大家从视频的上传、采集、存储和CDN分发等方面为我们介绍阿里云的整体方案&#xff0c;并且重点讲…

GitHub项目管理维护实用教程

GitHub项目维护教程 1&#xff09;注册GitHub账户并登陆&#xff1b; 2&#xff09;在Windows cmd&#xff08;或Ubuntu中的terminal&#xff09;中cd到自己的工作目录&#xff0c;将仓库clone下来&#xff1a; 命令&#xff1a; 1 git clone https://github.com/... #项目地址…