Experimento SQL: consulta estadística y consulta combinada
/*
Medicamento (número, nombre, precio, fabricante)
Receta (número de medicamento, cantidad, número de médico)
Médico (número, nombre, departamento, título)
*/
--crear base de datos Hospital
--ir
-- usar hospital
--crear tabla medi
--(
-- pk_id int,
-- nombre varchar(100) ,
-- precio en dinero,
--make varchar(200)
--)
--crear prescripción de tabla
--(
-- pk_id int,
-- num int,
-- doctor_id int
--)
--crear tabla médicos
--(
-- pk_id int,
--name varchar( 10),
--office varchar(50),
--jobtitle varchar(50)
--)
- -insertar en medi select '1','cool oil','1','Changde A factory'
--union all select '2','penicillin','10','Taoyuan B factory '
--union all select '3','blanco más negro','10','Hengyang c factory'
--union all select '4',' agua salada ', '10', 'Leiyang D Factory'
--insertar en doctores seleccione '001', 'Un médico', 'cirugía', 'intermedio'
- - union all select '002', 'Doctor B', 'Medicina Interna', 'Senior'
--union all select '003', 'Doctor C', 'Ortopedia', 'Junior'
--union all select '004', 'Dr. D', 'Brain Surgery', 'Special'
--insertar en prescripción seleccione '1', '1', '001'
--unión todos seleccionan '2', '2', '002'
--unión todos seleccionan '1', '3', '003'
--unión todos seleccionan '3', '4', '004'
--unión todos seleccionan '4', '2', '002'
- -union all select '1', '2', '001'
--union all select '2', '2', '003'
-- union all select '3', '2', '004'
--1 Cuente la cantidad de uso de cada medicamento.
seleccione a.pk_id, b.name, suma(num) cantidad de la prescripción a izquierda unirse a medi b
en a.pk_id=b.pk_id
group by a.pk_id, b.name
--2 cuenta los fabricantes que ofrecen más de tres tipos de medicamentos.
Como no lo pensé al principio, insertaré algunos datos ahora
--insert into medi select '5','cool oil type B','1 ','Changde A factory'
--union all select '6','Penicilina tipo B','10','Changde A Factory'
--union all select '7', 'Tipo B blanco más negro', '10', 'Fábrica de Changde A'
--unión todos seleccionan '8', 'Modelo A de agua salada', '10', 'Leiyang D factory'
--union all select '9','Saline C model','10','Leiyang D factory'
--union all select '10',' Saline D model',' 10', 'Leiyang D Factory'
seleccione marca, conteo(marca) del grupo medi teniendo marca con conteo(*)gt
--; 3 Cuente la dosis de “Penicilina” de cada departamento.
Esta declaración de consulta no es rigurosa. Necesita un análisis de situación específica
seleccione a.num, b.office de prescripción a izquierda unirse a los médicos b
en a.doctor_id=b.pk_id donde a.pk_id=2
--4 Las estadísticas de los médicos que nunca han recetado "Qinmycin" no son lo suficientemente rigurosas.
seleccione * de la prescripción a izquierda únase a los médicos b en a.doctor_id=b.pk_id
donde a.pk_idlt;gt;2
Hambriento, sin energía Se ha ido. No sé mucho sobre el negocio de muchos hospitales, por lo que comparar los datos es un poco divertido. Jaja
Baidu es muy activo Cuando terminé de escribir, ya me estaba quedando atrás
.