SoloCodigo

Bases de Datos => MySQL => Mensaje iniciado por: akiestudio en Miércoles 25 de Febrero de 2009, 00:28

Título: hacer esta consulta
Publicado por: akiestudio en Miércoles 25 de Febrero de 2009, 00:28
necesito hacer una consulta  y no se como hacerla en sql seria con decode , pero es que tampoco me sale en sql , la consulta es la siguiente:

dept_no   empleado  analista director
10                       2               1            3
20                       1              2              1
..

tengo que mostar por departamentos el numero de empleado que hay por oficio de la tabla famoso emple.

alguna ayuda, como seria la consulta en mysql
Título: Re: hacer esta consulta
Publicado por: goldenscriptup en Jueves 26 de Febrero de 2009, 10:18
Si en la tabla famosoempleado tienes los datos de los empleados y asignado a que departamento pertenece y para saber cuantos empleados tiene un departamento seria de esta forma:

Código: SQL
  1. SELECT COUNT(idempleado),nombreempledo,departamento FROM famosoempleado GROUP BY departamento;
  2.  

Si tienes alguna duda posteala y se un poco mas descriptivo con los datos que proporcionas.
Título: Re: hacer esta consulta
Publicado por: akiestudio en Jueves 26 de Febrero de 2009, 11:16
lo que tengo que hacer es que en mysql como si fuese un select decode,  en sql seria esta consulta , select dept_no,count(decode(oficio,'EMPLEADO',1) empleado GROUP BY dept_no;

Pero en mysql no existe la funcion decode , como se hace.
Título: Re: hacer esta consulta
Publicado por: F_Tanori en Jueves 26 de Febrero de 2009, 18:27
No te sirve usar un if?
Código: SQL
  1. SELECT IF(oficio='EMPLEADO',1,0) empleado GROUP BY dept_no;
  2.  

Saludos
Título: Re: hacer esta consulta
Publicado por: akiestudio en Viernes 27 de Febrero de 2009, 14:01
Muchas gracias pero tiene que ser con case

Como se puede hacer con case
Título: Re: hacer esta consulta
Publicado por: F_Tanori en Viernes 27 de Febrero de 2009, 20:21
Se usa igual

http://dev.mysql.com/doc/refman/5.0/es/ ... tions.html (http://dev.mysql.com/doc/refman/5.0/es/control-flow-functions.html" onclick="window.open(this.href);return false;)
http://dev.mysql.com/doc/refman/5.0/es/ ... ement.html (http://dev.mysql.com/doc/refman/5.0/es/case-statement.html" onclick="window.open(this.href);return false;)
http://mysql.conclase.net/curso/index.php?cap=010d (http://mysql.conclase.net/curso/index.php?cap=010d" onclick="window.open(this.href);return false;)

Saludos