[ / / / / / / / / / / / / / ] [ dir / animu / chemo / choroy / dempart / fast / jenny / truebrit / x ]

/choroy/ - Choroy Pride

Correo
Comentario *
Archivo
Contraseña (Randomized for file and post deletion; you may also set your own.)
* = obligatorio[▶ Opciones y restricciones de publicación]
Confused? See the FAQ.
Insertar
(reemplaza los archivos y puede usarse en su lugar)
Opciones
dadosladosmodificador

Tipos de archivos permitidos: jpg, jpeg, gif, png, webm, mp4, swf, pdf
El tamaño máximo de la imagen es de 16 MB.
Las dimensiones máximas de las imágenes son de 15000 x 15000.
Puedes subir 3 archivos por aporte.


/guarida/ | un poco de historia | IRC

File: 549b9971bf0b8af⋯.png (33,48 KB, 903x323, 903:323, 2.png)

73d1ee  No.111587

A-Ayuda ;_; Me quiero cortar un coco, me acordé que tengo prueba un día antes y estaba una clase atrasado. ¿Algún buen loro que sepa SQL y este despierto a estas horas? Es primera vez que hago un bloque anónimo y no sé como hacer para que reciba solo la primera fila de los departamentos con menos empleados (como lo especifica). Tengo esto, y me parece que es más redundante que la mierda, pero como dije, es mi primera vez y me está costando un poco.


DECLARE
v_dept_name departments.department_name%TYPE;
v_total_emp NUMBER(2) := 0;
BEGIN
SELECT d.department_name, COUNT(e.employee_id)
INTO v_dept_name, v_total_emp
FROM departments d JOIN employees e
ON(d.department_id = e.department_id)
GROUP BY d.department_name
HAVING COUNT(e.employee_id) >= ALL(
SELECT COUNT(employee_id)
FROM employees
GROUP BY department_id);
DECLARE
v_dept_name departments.department_name%TYPE;
v_total_emp NUMBER(2) := 0;
BEGIN
SELECT d.department_name, COUNT(e.employee_id)
INTO v_dept_name, v_total_emp
FROM departments d JOIN employees e
ON(d.department_id = e.department_id)
GROUP BY d.department_name
HAVING COUNT(e.employee_id) <= ALL( /*Esta mierda retorna 3 departamentos y tengo que tomar el primero*/
SELECT COUNT(employee_id)
FROM employees
GROUP BY department_id);
DBMS_OUTPUT.PUT_LINE();
END;

Se que me arrepentiré pero estoy desesperado;___;

blogs creado

73d1ee  No.111588

>>111587

Olvidé mencionar que es el esquema HR.


a835b5  No.111590

top kek men, divide tu trabajo en distintas partes y anda buscándolas en Stack Overflow, luego lo unes todo como el buen analista de programación que eres.


e6681f  No.111608

>>111587

Al menos danos el schema de la base de datos..


3f627d  No.111613

La bebida sin hielo.


a644f0  No.111622

cejas porque no aporto


b7902a  No.111623

Sube el SQL de la base de datos a ver si en una de esas la hacemos entre todos.


e6681f  No.111624

>>111587

Segun yo la pregunta esta lista con solo la primera query, no entiendo porque la pusiste dos veces ni cual es la utilidad del HAVING COUNT, solo le falta añadirle al COUNT(e.employee_id) un AS conteo para que tenga un nombre y despues al final añadir ORDER BY conteo ASC, y un LIMIT 1 si quieres solo el primer resultado


e6681f  No.111625

>>111624

Ah y es COUNT(d.deparment_id), en tu codigo estas contando cada id de empleado, las cuales son unicas y el conteo es exactamente 1 kek


c2de97  No.111630

>>111587

Oh this is so sad Alexa


b340e6  No.111656

Pero deja la estructura de tu cagás de tablas po incompetente concha de tu madre.


6b8cbc  No.111661

Solo sé css, asi que ponle un float left y listo.


e9a9c1  No.111664

Ni pico idea, solo pregunto si vale la pena analista de sistemas vespertino. Es hora de salir de neet.


488adc  No.111666

OP aquí, dormí unas horas.

Para los que me piden el esquema estoy desde el celular y no puedo subirlo ahora mismo, pero es fácil encontrarlo en internet.

>>111590

Es buen consejo loro, sé que esa es la idea pero me iba a demorar más que la chucha.

>>111608

Lo dije más arriba. Viene en oracle XE18c (creo que en esa versión van).

>>111624

>>111625

Se supone que algunas de las preguntas hay que hacerlas con bloques anidados, y me dió la impresión de que está necesitaba/podía hacerse con uno.

¿Qué pondrías en lugar del having count? Está contando cuántos empleados hay por departamento (por eso employee_id) y comparándolo con los mismos datos para retornar los departamentos con más empleados (en la primera subquery) y con menos en empleados (en la segunda).

Probaré con el LIMIT, no lo cachaba. Gracias, loro.

Deséenme suerte, tengo la prueba en dos horas.


e6681f  No.111671

>>111666

Cuidado que LIMIT es para Postgres talvez en Oracle se llame distinto

Yo haría la query así, que es como lo mismo que pusiste al principio:

SELECT d.department_name, COUNT(e.employee_id) FROM departments d JOIN employees e ON(d.department_id = e.department_id) GROUP BY d.department_name ORDER BY count ASC LIMIT 1;

Eso retorna lo mismo que aparece en la imagen


91be7c  No.111680

File: c880a247cf8bc62⋯.mp4 (411,44 KB, 480x270, 16:9, MikiCounter.mp4)

>>111666

Sube la bd y conversemos. A ver si juego con ella el sábado.


a644f0  No.111685

>>111666

medio get, es un buen augurio


488adc  No.112114

>>111685

Me rajé. Corrieron la prueba porque faltó mucha gente las últimas dos clases.


48013d  No.112161

>>112114

literalmente salvado por satanas


01c598  No.112165

>>112114

sacrifica algún buen memazo para consolidar el ritual, y ponte al día.


828279  No.112506

>>112114

Te pillé daniel conchetumare.




[Volver][Al encabezado][Catálogo][Nerve Center][Cancer][Post a Reply]
[]
[ / / / / / / / / / / / / / ] [ dir / animu / chemo / choroy / dempart / fast / jenny / truebrit / x ]