Está en la página 1de 13

CONSULTAS RESUELTAS CLASE:

9. Obtener los nombres y sueldos anuales de los empleados del departamento 100.
Presentarlos por orden decreciente de sueldos.
select nombre_empleado 'empleado',salario_base_empleado*12'sueldo anual(14
pagas',codigo_departamento'departamento'
!rom t_empleados
"#ere codigo_departamento$100
order by % desc
10. Obtener los nombres de los empleados cuya comisi&n es superior o igual al '0(
de su salario, por orden al!ab)tico.
set *orden+$0,
select *orden+$*orden-1 'orden', nombre_empleado 'empleado',
truncate(salario_base_empleado*0.',0
''0( .ueldo /ase', comision_empleado 'comision'
!rom t_empleados
"#ere comision_empleado0$salario_base_empleado*0.'
order by 2
11. 1n una campa2a de ayuda !amiliar se #a decidido dar a los empleados una paga
e3tra de '04 por #i5o, a partir del cuarto inclusi6e. Obtener por orden al!ab)tico
para estos empleados+ nombre y salario total 7ue 6an a cobrar incluyendo esta
paga e3tra.
SELECT @orden := @orden +1 'orden', nombre_empleado 'empleado', (
salario_base_empleado + ( 50 * numero_i!os_empleado "
" 'Sueldo #ase + 50e por i!o', numero_i!os_empleado 'i!os
empleado'
$%&' (_empleados
)*E%E numero_i!os_empleado +=,
&%-E% #. nombre_empleado
L/'/T 0 , 00
8O9918:;<+
.1=18> *orden +$ *orden -1 'orden', nombre_empleado 'empleado',numero_#i5os_empleado
'#i5os',(numero_#i5os_empleado?%*'0 'paga
e3tra',salario_base_empleado-i!null(comision_empleado,0-(numero_#i5os_empleado?%*'0
salario_base_empleado - ( '0 * numero_#i5os_empleado 'salario total - paga e3tra por #i5os'
@9OA t_empleados
BC191 numero_#i5os_empleado 0%
O9D19 /E nombre_empleado
12. Obtener por orden al!ab)tico los nombres de los empleados cuyos sueldos igualan
o superan al de 8laudia @ierro en mFs del '0(.
.1> *O9D1<+$0,
.1=18> *orden +$ *orden -1 'orden', nombre_empleado 'empleado', salario_base_empleado
'salario'
@9OA t_empleados
BC191 salario_base_empleado0$ (.1=18> salario_base_empleado*1.'0 @9OA t_empleados
BC191 nombre_empleado$'@:199O, 8=GHD:G'
O9D19 /E nombre_empleado
1%. Para todos los empleados 7ue tienen comisi&n, #allar sus salarios mensuales
totales incluyendo )sta. Obtenerlos por orden al!ab)tico. Callar tambi)n el
porcenta5e 7ue de su salario total supone la comisi&n.
SELECT @orden := @orden +1 'orden', nombre_empleado 'empleado',
salario_base_empleado + 1omision_empleado 'salario +
1omision',(run1a(e(1omision_empleado*1002salario_base_empleado,0"'por1en(
a!e 1omision sobre salario'
$%&' (_empleados
)*E%E salario_base_empleado 3= ( SELECT 1omision_empleado =0 "
&%-E% #. 0
L/'/T 0 , 00
14. Obtener los nombres de los departamentos 7ue no dependen !uncionalmente de
otro.
.1=18> nombre_departamento '<ombre departamento' , Icodigo_departamento_superiorI
!rom t_departamentos
"#ere Icodigo_departamento_superiorI is null
1'. Obtener por orden al!ab)tico los nombre de los empleados cuyo salario supera al mF3imo
salario de los empleados del departamento 122.
select nombre_empleado '<ombre empleado' , codigo_departamento '8odigo departamento' ,
salario_base_empleado '.alario base empleado'
!rom t_empleados
"#ere salario_base_empleado 0 all(select salario_base_empleado
!rom t_empleados
"#ere codigo_departamento$122
order by 2
1J.Obtener por orden al!ab)tico los nombres de los empleados cuyo salario supera en tres 6eces
y media o mFs al mKnimo salario de los empleados del departamento 122.
.elect nombre_empleado '<ombre empleado' , salario_base_empleado '.alario empleado',
codigo_departamento '8odigo departamento'
@rom t_empleados
"#ere salario_base_empleado0$(select min(salario_base_empleado* %.' !rom t_empleados
"#ere codigo_departamento$122
order by 1
1L.Obtener los nombres y salarios de los empleados cuyo salario coincida con la comisi&n de
algMn otro o la suya propia. Ordenarlos al!ab)ticamente.
.1=18> nombre_empleado '<ombre empleados' , salario_base_empleado '.alario base
empleados', comision_empleado '8omision empleado'
!rom t_empleados
"#ere salario_base_empleado$comision_empleado
order by 1.
!altan 1N, 19 y 20.
21.
set *orden+$0,
select *ordenn +$ *orden -1 'Orden', nombre_empleado '<ombre de empleado',
salario_base_empleado '.alario de empleado', numero_#i5os_empleado
!rom t_empleados
"#ere (salario_base_empleado O numero_#i5os_empleado (P (salario_base_empleado $ 1200 or
0 (comision_empleado * 2
order by 2
8O99188:;<+
SELECT @orden := @orden +1 '&rden', nombre_empleado '4ombre de empleado',
salario_base_empleado 'Salario de empleado', 1omision_empleado 'Comision
de empleado', numero_i!os_empleado '4umero de i!os empleado'
$%&' (_empleados
)*E%E salario_base_empleado 2 numero_i!os_empleado 51600
&% salario_base_empleado 2 numero_i!os_empleado + 1omision_empleado *6
&%-E% #. 6
L/'/T 0 , 00
CORREGIR**

22.
set @orden:=0;
select @orden := @orden +1 'Orden', nombre_emle!do '"ombre de emle!do'
#rom t_emle!dos
$%ere nombre_emle!do l&'e 'mor!('
order b) 2
2*.
set @orden :=0;
select @orden := @orden +1 'Orden', nombre_emle!do '"ombre emle!do'
#rom t_emle!dos
$%ere nombre_emle!do l&'e '(, +!ler&!n!('
order b) nombre_emle!do
2,.
set @orden:=0;
select @orden := @orden +1 'Orden', nombre_emle!do '"ombre emle!do'
#rom t_emle!dos
$%ere nombre_emle!do l&'e '(_______,('
order b) nombre_emle!do
2-.
SELECT @orden := @orden +1 '&rden', nombre_empleado '4ombre empleado',
LE47T*( 4ombre_empleado " 'Cara1(eres'
$%&' (_empleados
)*E%E nombre_empleado L/8E '______9, 9'
&%-E% #. 6
L/'/T 0 , 00
2..
/et @Orden:=0;
/elect @Orden := @Orden +1 'Orden', nombre_emle!do '"ombre del emle!do', 0en1t%
2nombre_emle!do3 'C!r!cteres'
4rom t_emle!dos
$%ere nombre_emle!do not l&'e '____(, ('
Order b) 2
25.
/et @Orden:=0;
/elect @Orden := @Orden +1 'Orden', nombre_emle!do '"ombre del emle!do', 0en1t%
2nombre_emle!do3 'C!r!cteres'
4rom t_emle!dos
$%ere nombre_emle!do l&'e '(E6, (__O'
Order b) 2
27.
/et @Orden:=0;
/elect @Orden := @Orden +1 'Orden', nombre_emle!do '"ombre del emle!do', 0en1t%
2nombre_emle!do3 'C!r!cteres'
4rom t_emle!dos
$%ere nombre_emle!do l&'e '(E6, (O' or nombre_emle!do l&'e '(E6, _____('
Order b) 2
28.
set @orden:=0;
select @orden := @orden +1 'Orden',nombre_emle!do '"ombre
emle!do',e9tens&on_tele#on&c!_emle!do 'E9tens&:n tele#on&c!'
#rom t_emle!dos
$%ere e9tens&on_tele#on&c!_emle!do &n 22-0,5-03
order b) 2
*0.
set @orden:=0;
select @orden := @orden +1 'Orden',nombre_emle!do '"ombre emle!do',cod&1o_de!rt!mento
'Cod&1o de!rt!mento'
#rom t_emle!dos
$%ere cod&1o_de!rt!mento &n 2select cod&1o_de!rt!mento #rom t_emle!dos $%ere
nombre_emle!do &n 2'G;0<E6, =I0;R','40OR, >ORO?E;'33
order b) 2
*1.
set @orden:=0;
select @orden := @orden +1 'Orden', nombre_centro '"ombre centro',@b&c!c&on 'Ab&c!c&on'
#rom t_centros
$%ere e9&sts 2select * #rom t_centros $%ere @b&c!c&on l&'e '(;?OCB;('3
order b) 2
*2.
set @orden:=0;
select @orden := @orden +1 'Orden', nombre_emle!do '"ombre emle!do', com&s&on_emle!do
'Com&s&on', cod&1o_de!rt!mento 'Cod&1o de!rt!mento'
#rom t_emle!dos
$%ere cod&1o_de!rt!mento = 110 !nd e9&sts 2select * #rom t_emle!dos $%ere
com&s&on_emle!do C 03
order b) 2
**.
/et @orden:=0;
/elect @orden := @orden +1 'Orden', nombre_emle!do '"ombre emle!do',
s!l!r&o_b!se_emle!do '/!l!r&o',#ec%!_&n1reso_emle!do '4ec%! &n1reso'
#rom t_emle!dos
$%ere #ec%!_&n1reso_emle!do C '1877D01D01' or s!l!r&o_b!se_emle!doE2000
order b) #ec%!_&n1reso_emle!do, nombre_emle!do
*,.
/et @Orden:=0;
/elect @Orden := @Orden
+1 'Orden', nombre_de!rt!mento '"ombre del de!rt!mento'
4rom t_de!rt!mentos
F%ere nombre_de!rt!mento not l&'e '(>IRECCIO"(' ;"> nombre_de!rt!mento "O? 0IGE
'(/EC?OR('
Order b) 2
*-.
/et @Orden:=0;
/elect @Orden := @Orden +1 'Orden', nombre_emle!do '"ombre emle!do',
n@mero_%&Hos_emle!do '"@mero de %&Hos', s!l!r&o_b!se_emle!do '/!l!r&o'
4rom t_emle!dos
F%ere 2n@mero_%&Hos_emle!do=0 !nd s!l!r&o_b!se_emle!do C 20003 or
2n@mero_%&Hos_emle!do C 0 !nd s!l!r&o_b!se_emle!do C *0003
Order b) 2
*..
/et @Orden:=0;
/elect @Orden := @Orden +1 'Orden', nombre_emle!do '"ombre del emle!do', 0en1t%
2nombre_emle!do3 'C!r!cteres'
4rom t_emle!dos
F%ere 0en1t% 2nombre_emle!do3 C= 1-
Order b) 2
4ORI; =RO4E/OR:
/et @Orden:=0;
/elect @Orden := @Orden +1
'Orden', nombre_emle!do '"ombre del emle!do'
4rom t_emle!dos
F%ere nombre_emle!do l&'e '(, _____________('
Order b) 2
*5.
/et @Orden:=0;
/elect @Orden := @Orden +1, nombre_de!rt!mento '"ombre de!rt!mento',
s@bstr&n12nombre_de!rt!mento,1, 83 ';bre+&!t@r!'
4rom t_de!rt!mentos
Order b) 2
*7.
/et @Orden:=0;
/elect @Orden := @Orden +1, nombre_de!rt!mento '"ombre de!rt!mento',
s@bstr&n12nombre_de!rt!mento, 12, -3 ';bre+&!t@r!'
4rom t_de!rt!mentos
Order b) 2
*8.
/et @Orden:=0;
/elect @Orden := @Orden +1, nombre_de!rt!mento '"ombre de!rt!mento',
s@bstr&n12nombre_de!rt!mento, 1*,-3 ';bre+&!t@r!', len1t%2nombre_de!rt!mento3 'C!r!cteres'
4rom t_de!rt!mentos
$%ere len1t%2nombre_de!rt!mento3 C 12
Order b) 2
,0.
/elect d&st&nct s@bstr2nombre_de!rt!mento,len1t%2nombre_de!rt!mento3D23
4rom t_de!rt!mentos
Order b) 1
,1.
/E0EC? nombre_emle!do 'Emle!do', s@bstr2#ec%!_n!c&m&ento_emle!do, *3'4ec%!:!!DmmDdd',
cod&1o_de!rt!mento '>e!rt!mento'
4ROI t_emle!dos
FBERE cod&1o_de!rt!mento=100
OR>ER JK #ec%!_n!c&m&ento_emle!do
,..
/E0EC? nombre_emle!do '"ombre', d!te_#orm!t2#ec%!_&n1reso_emle!do ,
1et_#orm!t2d!te,'EAR'33 '4ec%! &n1reso',d!ted&##2'1888D01D01', #ec%!_&n1reso_emle!do3 '>&!s en
l! emres!'
4rom t_emle!dos
F%ere #ec%!_&n1reso_emle!do C '1887D0-D*1'
Order b) 1
,5.
/E0EC? nombre_emle!do '"ombre', d!te_#orm!t2#ec%!_&n1reso_emle!do,
1et_#orm!t2>;?E,'EAR'33'4ec%! &n1reso'
4rom t_emle!dos
$%ere #ec%!_&n1reso_emle!do bet$een '1887D01D01' !nd d!te_!dd2'1887D01D01', &nter+!l 78 d!)3
Order b) nombre_emle!do
,7.
/elect nombre_emle!do '"ombre', d!te_#orm!t2#ec%!_n!c&m&ento_emle!do,
1et_#orm!t2>;?E,'EAR'33'4ec%! n!c&m&ento'
4rom t_emle!dos
F%ere mont%2#ec%!_n!c&m&ento_emle!do3=11
Order b) 2
,8.
/elect nombre_emle!do '"ombre', d!te_#orm!t2#ec%!_n!c&m&ento_emle!do,
1et_#orm!t2>;?E,'EAR'33'4ec%! n!c&m&ento'
4rom t_emle!dos
F%ere mont%2#ec%!_n!c&m&ento_emle!do3=mont%2c@rd!te233 !nd
d!)2#ec%!_n!c&m&ento_emle!do3=d!)2c@rd!te233
Order b) 1
,8*.
/elect nombre_emle!do '"ombre', d!te_#orm!t2#ec%!_n!c&m&ento_emle!do,
1et_#orm!t2>;?E,'EAR'33'4ec%! n!c&m&ento'
4rom t_emle!dos
F%ere mont%2#ec%!_n!c&m&ento_emle!do3=mont%2c@rd!te233 !nd
d!)2#ec%!_n!c&m&ento_emle!do3=d!)2c@rd!te23+*3
Order b) 1
-0.
/elect nombre_emle!do '"ombre', d!te_#orm!t2#ec%!_&n1reso_emle!do,
1et_#orm!t2>;?E,'EAR'33'4ec%! &n1reso',tr@nc!te2d!ted&##2'201*D12D
*1',#ec%!_&n1reso_emle!do3L*.-.2-, 03 ';Mos en l! emres! ! *1 de >&c de 201*'
4rom t_emle!dos
F%ere tr@nc!te2d!ted&##2'201*D12D*1',#ec%!_&n1reso_emle!do3L*.-.2-,03 =2-
Order b) nombre_emle!do
-1.
/elect nombre_emle!do '"ombre', d!te_#orm!t2#ec%!_&n1reso_emle!do,
1et_#orm!t2>;?E,'EAR'33'4ec%! &n1reso',tr@nc!te2d!ted&##2'201*D12D
*1',#ec%!_&n1reso_emle!do3L*.-.2-, 03 ';Mos en l! emres! ! *1 de >&c de 201*'
4rom t_emle!dos
F%ere tr@nc!te2d!ted&##2'201*D12D*1',#ec%!_&n1reso_emle!do3L*.-.2-,03 C=2-
Order b) nombre_emle!do
-2.

También podría gustarte