Alguien tiene nociones de SQL?

Y

Yonik

Invitado
Pos eso, alguien sabe manejar bien el SQL? Toy haciendo unos ejercicios pa clase y no me salen nipatrás.....
 
shurmana said:
cuentame mas shurmano


Mira hay 3 que no se hacer, lo que pasa que es posible que no se pueda hacer simplemente (el profe ya nos lo dijo)

La historia esta en que lo tengo k hacer con "joins" y sin usar subconsultas

Dice asi:
Escriba una consulta que muestre el apellido y la fecha de contratacion de calquier empleado del mismo departamento que Zlotkey. Excluya a Zlotkey.

Usando subconsultas era fácil y quedaba así, pero usando joins no tengo ni zorra de como hacerlo:

SELECT last_name, hire_date
FROM employees
WHERE department_id = (SELECT department_id
FROM employees
WHERE last_name = 'Zlotkey')
AND last_name <> 'Zlotkey';
 
mira shurmano la verdad no recuerdo si con left join, u otro tipo de join pero lo que hace este comando es precsisamente lo que necesitas, y creo que vendria siendo asi(aunque no estoy seguro al 100% que apenas e empezado a practicar eso)

SELECT last_name, hire_date FROM employees where[color=FF0000] last_name [color=FF0000]=[/color] 'zlotkey'[/color]
left join department_id=employees_id [color=FF0000]where last_name [color=FF0000]<>[/color]'zlotkey'[/color]

lo que e puesto en rojo son cosas que no estoy seguro al 100%

la ultima linea "mezcla" las tablas y la primera linea selecciona los datos de la tabla, la verdad no te aseguro que funcione pero mas o menos es asi... para que te des una idea


 
shurmana said:
mira shurmano la verdad no recuerdo si con left join, u otro tipo de join pero lo que hace este comando es precsisamente lo que necesitas, y creo que vendria siendo asi(aunque no estoy seguro al 100% que apenas e empezado a practicar eso)

SELECT last_name, hire_date FROM employees where[color=FF0000] last_name [color=FF0000]=[/color] 'zlotkey'[/color]
left join department_id=employees_id [color=FF0000]where last_name [color=FF0000]<>[/color]'zlotkey'[/color]



lo que e puesto en rojo son cosas que no estoy seguro al 100%

la ultima linea "mezcla" las tablas y la primera linea selecciona los datos de la tabla, la verdad no te aseguro que funcione pero mas o menos es asi... para que te des una idea

Bueno shurmana, te hacercaste bastante :P al final me ha salido y la cosa keda así:

SELECT a.last_name, b.hire_date
FROM employees a, employees b
WHERE a.department_id = b.department_id
AND b.last_name = 'Zlotkey'
AND a.last_name <> 'Zlotkey';

Resulta que se puede hacer clausulas JOIN sin usar "JOIN LEFT", solo buscando la iwaldad en las 2 tablas.....en este caso vale cualquiera pq es la misma tabla en los 2 casos.
 
Yonik said:
Bueno shurmana, te hacercaste bastante :P al final me ha salido y la cosa keda así:

SELECT a.last_name, b.hire_date
FROM employees a, employees b
WHERE a.department_id = b.department_id
AND b.last_name = 'Zlotkey'
AND a.last_name <> 'Zlotkey';

Resulta que se puede hacer clausulas JOIN sin usar "JOIN LEFT", solo buscando la iwaldad en las 2 tablas.....en este caso vale cualquiera pq es la misma tabla en los 2 casos.

gracias por poner la correccion, me la guardo por si acaso.