赞
踩
一、阐述达梦数据库的查询和操作
数据库查询是指在数据库中查询所需数据的过程。它是通过指定一组查询条件来获取数据库中的数据。这些查询条件可以是各种各样的,例如输入关键字、选择特定的字段、限制返回记录的数量等等。常见的数据库查询语句包括SELECT、UPDATE、INSERT和DELETE语句。在设计查询语句时,应该考虑数据类型、数据结构和查询效率等因素。常用的数据库管理系统有MySQL、Oracle、PostgreSQL等。数据库查询是指在数据库中查询所需数据的过程。它是通过指定一组查询条件来获取数据库中的数据。这些查询条件可以是各种各样的,例如输入关键字、选择特定的字段、限制返回记录的数量等等。常见的数据库查询语句包括SELECT、UPDATE、INSERT和DELETE语句。在设计查询语句时,应该考虑数据类型、数据结构和查询效率等因素。常用的数据库管理系统有MySQL、Oracle、PostgreSQL等。
达梦数据库是一种关系型数据库管理系统。查询和操作是数据库的基本功能,包括从数据库中检索数据和对数据库中的数据进行修改、删除和插入等操作。
在达梦数据库中,可以使用SQL语言进行查询和操作。SQL(Structured Query Language)是一种用于管理和操作关系型数据库的标准化语言。通过编写SQL语句,可以实现对数据库中数据的查询、插入、更新和删除等操作。
查询操作是通过SELECT语句实现的。可以根据条件从数据库中选择满足特定要求的数据,并将结果返回。查询可以包括使用各种条件、排序、分组和连接等操作。
操作包括对数据库中的数据进行插入、更新和删除等操作。通过INSERT语句可以向数据库中插入新的数据记录。通过UPDATE语句可以修改数据库中已有的数据。通过DELETE语句可以删除数据库中的数据记录。
此外,还可以使用其他SQL语句和功能,如CREATE TABLE用于创建数据表,ALTER TABLE用于修改表结构,以及各种聚合函数和操作符等。
总之,达梦数据库查询与操作是指使用SQL语言对达梦数据库进行数据查询和管理的过程。通过合理地使用查询和操作,可以高效地管理和操作数据库中的数据。
二、展示数据库查询与操作的学习成果
1、数据库的创建:
查询所有数据库:show databases
创建数据库:create database <数据库名>;
删除数据库:drop database <数据库名>;
进入数据库:use <数据库名>;
2、数据表的操作:
(1) 查询数据库下表:show tables;
(2) 创建表:create table student(id int(4) primary key,name char(20));注释:id为表的第一列;
int数字类型;
primary key主键的意思,列不能重复。
Name为表的第二列名字。
char:类型;
创建表:create table score(id int(4) not null,class int(2));注释:not null字段不能为空。
创建表:create table student1(id int(4) not null,name char(20));Field(列名),Type(字段类型),null(是否为空),key(主键)
(3) 查看表结构:describe student; 或 desc student;
(4)修改表名:alter table<表名> rename<表名>;
(5)删除表:drop table<表名>;
(6)修改表字段信息:alter table student change id id int(20);
(7)增加表字段信息:alter table student1 add class int(4) not null after id;
(8)删除一个表字段:alter table student1 drop number;
例题1:
假设有一个学生信息表(student_info),包含以下字段:学生ID(student_id)、学生姓名(student_name)、年龄(age)、班级(class)和性别(gender)。
1. 创建学生信息表:
2.向学生信息表中插入一些示例数据:
- INSERT INTO student_info (student_id, student_name, age, class, gender)
- VALUES (1, '张三', 18, '一班', '男');
-
- INSERT INTO student_info (student_id, student_name, age, class, gender)
- VALUES (2, '李四', 17, '二班', '男');
-
- INSERT INTO student_info (student_id, student_name, age, class, gender)
- VALUES (3, '王五', 19, '三班', '男');
-
- INSERT INTO student_info (student_id, student_name, age, class, gender)
- VALUES (4, '赵六', 16, '四班', '女');
-
- INSERT INTO student_info (student_id, student_name, age, class, gender)
- VALUES (5, '小七', 18, '五班', '女');
3.查询年龄小于18岁的男生的姓名和班级:
例题2:以下是一个查询达梦数据库中员工信息的例题。
1.首先,我们需要创建一个员工信息表,包括员工编号、姓名、性别和部门等字段。可以使用以下的SQL语句来创建表:
2.接下来,我们可以插入一些示例数据到员工信息表中,用于后续的查询操作。可以使用以下的SQL语句来插入数据:
- INSERT INTO employees (id, name, gender, department)
- VALUES
- (1, '张三', '男', '销售部'),
- (2, '李四', '女', '人力资源部'),
- (3, '王五', '男', '技术部'),
- (4, '赵六', '女', '财务部'),
- (5, '小红', '女', '市场部');
3.最后,我们可以使用以下的SQL语句来查询所有员工的信息:
执行以上查询语句后,将返回员工信息表中所有员工的记录。
例题3:查询达梦数据库中员工的入职时间,需要创建一个员工信息表,然后插入示例数据,最后执行查询操作
1.创建员工信息表:
2. 插入示例数据:
3. 查询员工的入职时间:
执行上述查询语句后,将会返回所有员工的姓名和入职时间。
例题4:
假设我们有两个表:员工表(Employees)和部门表(Departments)。
员工表(Employees)的结构如下:
- emp_id(员工ID)
- emp_name(员工姓名)
- emp_salary(员工薪水)
- dept_id(所属部门ID)
部门表(Departments)的结构如下:
- dept_id(部门ID)
- dept_name(部门名称)
我们要解决以下两个问题:
问题1:查询薪水排名前三的员工。
问题2:查询每个部门的平均薪水并按照平均薪水降序排列。
解决方案如下:
步骤1:建表
首先,我们需要建立两个表:员工表(Employees)和部门表(Departments)。
创建员工表(Employees)的SQL语句如下:
- CREATE TABLE Employees (
- emp_id INT PRIMARY KEY,
- emp_name VARCHAR(50),
- emp_salary DECIMAL(10, 2),
- dept_id INT
- );
创建部门表(Departments)的SQL语句如下:
- CREATE TABLE Departments (
- dept_id INT PRIMARY KEY,
- dept_name VARCHAR(50)
- );
步骤2:插入数据
接下来,我们需要向两个表中插入一些示例数据。
向员工表(Employees)中插入数据的SQL语句如下:
- INSERT INTO Employees (emp_id, emp_name, emp_salary, dept_id)
- VALUES
- (1, 'John', 5000, 1),
- (2, 'Alice', 6000, 1),
- (3, 'Bob', 7000, 2),
- (4, 'Tom', 5500, 2),
- (5, 'Emma', 8000, 3),
- (6, 'David', 4500, 3);
向部门表(Departments)中插入数据的SQL语句如下:
- INSERT INTO Departments (dept_id, dept_name)
- VALUES
- (1, 'Sales'),
- (2, 'Finance'),
- (3, 'Marketing');
步骤3:解决问题1
问题1:查询薪水排名前三的员工。
使用以下SQL语句可以解决问题1:
- SELECT emp_name, emp_salary
- FROM Employees
- ORDER BY emp_salary DESC
- LIMIT 3;
这条SQL语句会按照员工薪水降序排列,并只返回前三个结果。
步骤4:解决问题2
问题2:查询每个部门的平均薪水并按照平均薪水降序排列。
使用以下SQL语句可以解决问题2:
- SELECT d.dept_name, AVG(e.emp_salary) AS avg_salary
- FROM Departments d
- JOIN Employees e ON d.dept_id = e.dept_id
- GROUP BY d.dept_name
- ORDER BY avg_salary DESC;
这条SQL语句会先使用JOIN将员工表(Employees)和部门表(Departments)连接起来,然后使用GROUP BY按照部门名称分组,并计算每个部门的平均薪水。最后,使用ORDER BY按照平均薪水降序排列结果。
例题5:
1. 建立员工表(Employee)和部门表(Department)。
员工表(Employee)的字段包括:
- 员工编号(EmployeeID) - int类型
- 员工姓名(EmployeeName) - varchar类型
- 部门编号(DepartmentID) - int类型
- 薪水(Salary) - int类型
部门表(Department)的字段包括:
- 部门编号(DepartmentID) - int类型
- 部门名称(DepartmentName) - varchar类型
使用SQL语句创建这两个表:
- -- 创建员工表
- CREATE TABLE Employee (
- EmployeeID INT,
- EmployeeName VARCHAR(50),
- DepartmentID INT,
- Salary INT
- );
-
- -- 创建部门表
- CREATE TABLE Department (
- DepartmentID INT,
- DepartmentName VARCHAR(50)
- );
2. 向员工表(Employee)和部门表(Department)中插入示例数据。
使用SQL语句插入示例数据:
- -- 插入员工数据
- INSERT INTO Employee (EmployeeID, EmployeeName, DepartmentID, Salary)
- VALUES
- (1, 'John', 1, 5000),
- (2, 'Mary', 2, 6000),
- (3, 'Tom', 1, 4500),
- (4, 'Jane', 3, 5500),
- (5, 'Mike', 2, 7000),
- (6, 'Emily', 1, 4000);
-
- -- 插入部门数据
- INSERT INTO Department (DepartmentID, DepartmentName)
- VALUES
- (1, 'HR'),
- (2, 'Finance'),
- (3, 'IT');
3. 查询薪水排名前三的员工。
使用SELECT、FROM和ORDER BY语句查询薪水排名前三的员工:
- SELECT EmployeeName, Salary
- FROM Employee
- ORDER BY Salary DESC
- LIMIT 3;
查询结果如下:
4. 查询每个部门的平均薪水并按照平均薪水降序排列。
使用SELECT、FROM、JOIN、GROUP BY和ORDER BY语句查询每个部门的平均薪水并按照平均薪水降序排列:
- SELECT d.DepartmentName, AVG(e.Salary) AS AverageSalary
- FROM Department d
- JOIN Employee e ON d.DepartmentID = e.DepartmentID
- GROUP BY d.DepartmentName
- ORDER BY AverageSalary DESC;
查询结果如下:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。