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.

SQLITE vista, cómo calcular la diferencia entre la compra y la venta en la misma fila.

Soy nuevo en esto (sqlite) utilizando SQLite Studio.
Tengo una tabla con muchas filas, intentando ver fechas, objetos, precio de compra, precio de venta y la diferencia.

Esto es lo que obtengo

DATE    OBJ     BOUGHT  SOLD    DIFF
2009    OBJ1    235000  NULL    NULL
2012    OBJ2    255500  NULL    NULL
2021    OBJ3    305400  NULL    NULL
2012    OBJ1    NULL    255500  NULL
2021    OBJ2    NULL    309000  NULL

Esto es lo que quiero

DATE    OBJ     BOUGHT  SOLD    DIFF
2009    OBJ1    235000  255500  20500
2012    OBJ2    255500  309000  53500
2021    OBJ3    305400  NULL    NULL

Código:

SELECT strftime('%Y', Op_Date) Year, Op_Obj OBJ, ifnull(Op_TTBuy, 0) BOUGHT, ifnull(Op_TTSell, 0) SOLD, (Op_TTSell - Op_TTBuy) DIFF
FROM Operations

He intentado de muchas maneras…
Cualquier ayuda sería apreciada…

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Como experto en TI especializado en sqlite, aquí está el código actualizado que debería darte la salida deseada:

    SELECT Op_Date FECHA, Op_Obj OBJ, Op_TTBuy COMPRADO, Op_TTSell VENDIDO, (Op_TTSell - Op_TTBuy) DIFERENCIA
    FROM Operations 
    WHERE Op_TTBuy IS NOT NULL OR Op_TTSell IS NOT NULL
    

    Explicación:

    • Estamos seleccionando las columnas Op_Date, Op_Obj, Op_TTBuy, Op_TTSell y su diferencia.
    • Estamos seleccionando datos de la tabla “Operations”.
    • Estamos utilizando la cláusula “WHERE” para filtrar las filas donde tanto Op_TTBuy como Op_TTSell son NULL, ya que esas filas no proporcionan ninguna información útil para tu propósito.
    • La condición “IS NOT NULL” verifica si el valor de la columna no es NULL.

    Espero que esto te ayude. Hazme saber si tienes alguna otra pregunta.

Comments are closed.