employees
的表,包含以下列:id
, name
, department
, salary
。,,以下是一个查询所有在”Sales”部门工作的员工及其薪水的SQL语句:,,“sql,SELECT name, salary ,FROM employees ,WHERE department = 'Sales';,
“SQL 查询语句实例
SQL(Structured Query Language)是用于访问和操作关系型数据库的标准语言,以下是一些常见的 SQL 查询语句实例,包括选择数据、插入数据、更新数据和删除数据等操作。
1. 选择数据 (SELECT)
基本查询
从名为employees
的表中选择所有列的数据:
SELECT * FROM employees;
选择特定列
从employees
表中选择特定列的数据:
SELECT first_name, last_name, department FROM employees;
带有条件的查询 (WHERE)
选择age
大于 30 的员工:
SELECT * FROM employees WHERE age > 30;
排序 (ORDER BY)
按salary
列升序排列员工数据:
SELECT * FROM employees ORDER BY salary ASC;
使用聚合函数 (COUNT, SUM, AVG)
计算每个部门的平均工资:
SELECT department, AVG(salary) AS avg_salary FROM employees GROUP BY department;
2. 插入数据 (INSERT)
插入单条记录
向employees
表中插入一条新记录:
INSERT INTO employees (first_name, last_name, age, department, salary) VALUES ('John', 'Doe', 28, 'Engineering', 75000);
插入多条记录
一次性向employees
表中插入多条记录:
INSERT INTO employees (first_name, last_name, age, department, salary) VALUES ('Jane', 'Smith', 32, 'Marketing', 65000), ('Emily', 'Johnson', 45, 'HR', 70000);
3. 更新数据 (UPDATE)
更新单条记录
将employee_id
为 1 的员工的工资更新为 80000:
UPDATE employees SET salary = 80000 WHERE employee_id = 1;
更新多条记录
将所有department
为 ‘Engineering’ 的员工的工资增加 5000:
UPDATE employees SET salary = salary + 5000 WHERE department = 'Engineering';
4. 删除数据 (DELETE)
删除单条记录
删除employee_id
为 1 的员工:
DELETE FROM employees WHERE employee_id = 1;
删除多条记录
删除所有age
小于 25 的员工:
DELETE FROM employees WHERE age < 25;
5. 联合查询 (JOIN)
内连接 (INNER JOIN)
从employees
表和departments
表中选择匹配的数据:
SELECT e.first_name, e.last_name, d.department_name FROM employees e INNER JOIN departments d ON e.department = d.department_id;
左连接 (LEFT JOIN)
从employees
表和departments
表中选择数据,即使departments
表中没有匹配的记录:
SELECT e.first_name, e.last_name, d.department_name FROM employees e LEFT JOIN departments d ON e.department = d.department_id;
右连接 (RIGHT JOIN)
从employees
表和departments
表中选择数据,即使employees
表中没有匹配的记录:
SELECT e.first_name, e.last_name, d.department_name FROM employees e RIGHT JOIN departments d ON e.department = d.department_id;
相关问题与解答
问题1:如何在 SQL 中选择特定的列并按多个条件进行排序?
解答1: 你可以使用SELECT
语句选择特定的列,并结合ORDER BY
子句按多个条件进行排序,要选择first_name
和last_name
列,并先按last_name
升序排序,再按first_name
降序排序:
SELECT first_name, last_name FROM employees ORDER BY last_name ASC, first_name DESC;
问题2:在 SQL 中如何实现两个表的联合查询,并只显示满足特定条件的记录?
解答2: 你可以使用JOIN
语句结合WHERE
子句来实现,假设你有两个表employees
和projects
,并且你想选择那些参与了某个特定项目的员工信息,可以这样做:
SELECT e.first_name, e.last_name, p.project_name FROM employees e INNER JOIN projects p ON e.employee_id = p.employee_id WHERE p.project_id = 101;
来源互联网整合,作者:小编,如若转载,请注明出处:https://www.aiboce.com/ask/133066.html