es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

SELECT COUNT(CASE WHEN gender = ‘Male’ AND marital_status = ‘Married’ THEN 1 END) AS gentleman_married, COUNT(CASE WHEN gender = ‘Male’ AND marital_status = ‘Unmarried’ THEN 1 END) AS gentleman_unmarried, COUNT(CASE WHEN gender = ‘Female’ AND marital_status = ‘Married’ THEN 1 END) AS lady_married, COUNT(CASE WHEN gender = ‘Female’ AND marital_status = ‘Unmarried’ THEN 1 END) AS lady_unmarried FROM table_name WHERE gender IN (‘Male’, ‘Female’);

Estoy usando PostgreSQL. Quiero contar:

  1. caballeros casados y caballeros solteros where gender='M'
  2. damas casadas y damas solteras where gender='F'
  3. Total de conteo de casados y conteo de solteros.

Solo puedo ejecutar caballeros casados y caballeros solteros o damas casadas y damas solteras where gender=? pero no pude ejecutar la consulta completa a continuación. Por lo tanto, ¿podría alguien darme las correcciones sobre el siguiente código, por favor?

sql
SELECT COUNT(CASE
WHEN married = 'M' THEN
1
END) AS caballeros_casados WHERE gender = 'M',
COUNT(CASE
WHEN married = 'U' THEN
1
END) AS caballeros_solteros WHERE gender = 'M',
COUNT(CASE
WHEN married = 'M' THEN
1
END) AS damas_casadas WHERE gender = 'F',
COUNT(CASE
WHEN married = 'U' THEN
1
END) AS damas_solteras WHERE gender = 'F',
COUNT() AS conteo_casados WHERE married = 'M',
COUNT(
) AS conteo_solteros WHERE married = 'U'
FROM station
WHERE group = 'abc';

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para contar los hombres casados y los hombres solteros, así como las mujeres casadas y las mujeres solteras según su género en PostgreSQL, puedes utilizar la siguiente consulta:

    SELECT 
        SUM(CASE WHEN genero='M' AND casado = 'M' THEN 1 ELSE 0 END) AS hombres_casados,
        SUM(CASE WHEN genero='M' AND casado = 'U' THEN 1 ELSE 0 END) AS hombres_solteros,
        SUM(CASE WHEN genero='F' AND casado = 'M' THEN 1 ELSE 0 END) AS mujeres_casadas,
        SUM(CASE WHEN genero='F' AND casado = 'U' THEN 1 ELSE 0 END) AS mujeres_solteras,
        SUM(CASE WHEN casado = 'M' THEN 1 ELSE 0 END) AS cantidad_casados,
        SUM(CASE WHEN casado = 'U' THEN 1 ELSE 0 END) AS cantidad_solteros
    FROM estacion
    WHERE grupo = 'abc';
    

    En esta consulta, utilizamos la función SUM() con declaraciones CASE para contar el número de hombres casados, hombres solteros, mujeres casadas, mujeres solteras, cantidad de casados y cantidad de solteros. También utilizamos la claúsula WHERE para filtrar los resultados según la columna grupo.

    Nota: Asegúrate de reemplazar estacion por el nombre de tu tabla y abc con el valor deseado para grupo.

Comments are closed.