Práctica de MySQL 7|| No. 1 artículo simple (incluye 5 preguntas, dificultad: simple)

Introducción: El título proviene de la práctica de programación SQL en línea de Niuke. El contenido del artículo es principalmente para explicar las ideas del blogger, los puntos de vista relevantes y el resumen de los puntos principales al hacer las preguntas. En general, es fácil corregir errores claros, es difícil encontrar errores ocultos y hay un largo camino por recorrer. ¡Lo buscaré!

Pregunta 1 (Dificultad: Fácil)

Hay un perfil de tabla de empleados de la siguiente manera:

Requisitos de escritura:

Encuentre toda la información del último empleado en empleados, el resultado del ejemplo anterior es el siguiente:

Ideas para resolver problemas:

 Código de resolución de problemas:

#解法一:
SELECT * FROM employees
ORDER BY hire_date DESC
LIMIT 1;

#解法二:
SELECT * FROM employees
WHERE hire_date = (
SELECT max(hire_date) FROM employees);

Resumen de comparación:

  • límite es más conveniente de usar, pero debe tenerse en cuenta que esta situación no se aplica cuando varios datos cumplen el mismo requisito

Pregunta 2 (Dificultad: Fácil)

Hay un perfil de tabla de empleados de la siguiente manera:

Requisitos de escritura:

Encuentre toda la información sobre el penúltimo empleado en la lista de empleados. El resultado del ejemplo anterior es el siguiente:

Nota: Puede haber empleados que comenzaron en la misma fecha, por lo que puede haber más de un empleado con el penúltimo horario de incorporación.

Ideas para resolver problemas:

  Código de resolución de problemas:

select * from employees
where hire_date = (
select distinct hire_date from employees
order by hire_date desc limit 2,1
);

Resumen de comparación:

  • Frente a la primera pregunta, la segunda pregunta permite la existencia de empleados que se incorporan en la misma fecha, lo que hace inaplicable el límite, que es también el límite del límite.
  • Puntos de conocimiento complementarios: la función de la cláusula de límite es limitar el número de resultados de la consulta devueltos. Uso : [select * from table name limit m,n], donde m es el valor de índice del resultado de la consulta, que comienza desde 0 por predeterminado; n es el resultado de la consulta el monto devuelto


Pregunta 3 (Dificultad: Fácil)

Hay una tabla de empleados, los perfiles de los empleados son los siguientes:

Hay una tabla de departamentos, el perfil dept_emp es el siguiente:

Requisitos de escritura:

Encuentre el last_name, first_name y dept_no de todos los empleados que han sido asignados a un departamento. Los empleados de los departamentos no asignados no se muestran. El ejemplo anterior es el siguiente:

Ideas para resolver problemas:

 Código de resolución de problemas:

#内联解法
select employees.last_name,employees.first_name,dept_emp.dept_no
from dept_emp
inner join employees
on dept_emp.emp_no=employees.emp_no;

#左连接解法:
select employees.last_name,employees.first_name,dept_emp.dept_no
from dept_emp
left join employees
on dept_emp.emp_no=employees.emp_no
where dept_no is not null;

Resumen de comparación:

  • Examine principalmente el uso de la conexión de dos tablas, que es relativamente simple

Pregunta 4 (Dificultad: Fácil)

Existe una escala salarial y los salarios se perfilan de la siguiente manera:

Requisitos de escritura:

Encuentre el número de empleado emp_no con más de 15 registros de salario y su correspondiente número de registro t. El resultado del ejemplo anterior es el siguiente:

Ideas para resolver problemas:

 Código de resolución de problemas:

select emp_no, count(*) from salaries
group by emp_no
having count(*)>15;

Resumen de comparación:

  • El filtrado después de agrupar utiliza el tener, y el filtrado antes de agrupar utiliza donde

Pregunta 5 (Dificultad: Fácil)

Existe una escala salarial y los salarios se perfilan de la siguiente manera:

Requisitos de escritura:

Averigüe la situación salarial específica de todos los empleados, muestre el mismo salario solo una vez y muéstrelo en orden inverso. El resultado del ejemplo anterior es el siguiente:

Ideas para resolver problemas:

Código de resolución de problemas:

select distinct salary
from salaries
order by salary desc;

Resumen de comparación:

  • Examine principalmente el uso de palabras clave distintas y el uso del orden por orden descendente, que es relativamente simple

Supongo que te gusta

Origin blog.csdn.net/Inochigohan/article/details/122619132
Recomendado
Clasificación