如何将数据库中的信息导入列和行?

时间:2017-07-20 12:56:01

标签: sql sql-server

好吧,我已经发布了它,但我没有正确解释,所以我删除了旧帖子,在这篇文章中, 我会详细解释一切。

在此图片中,您可以看到我的数据库图表。

Database Diagram

我只会使用3张表:

  • tbl_transacciones
  • tbl_componentes
  • tbl_lineas

我想在SQL Query中显示的信息是这样的:

Query Result

每个线性列的数量,是我在tbl_transacciones中具有相同关系的所有数量的总和。

例如,如果在tbl_transacciones中我有 某些组件,某些行,有X个数量,我想在我的sql查询中显示所有具有相同关系的组件的总和,我希望你能理解我,因为我的英语不太好,所以我真的希望你能帮助我。

1 个答案:

答案 0 :(得分:0)

当Linea = 1,2或3时,使用Cantidad。

SELECT c.Description
    ,SUM(CASE 
            WHEN l.Nombre = 1
                THEN t.Cantidad
            END) "Linea_1"
    ,SUM(CASE 
            WHEN l.Nombre = 2
                THEN t.Cantidad
            END) "Linea_2"
    ,SUM(CASE 
            WHEN l.Nombre = 3
                THEN t.Cantidad
            END) "Linea_3"
FROM tbl_components c
LEFT JOIN tbl_transacciones t ON t.IdComponente = c.IdComponente
LEFT JOIN tbl_lineas l ON l.IdLinea = t.IdLinea
GROUP BY c.Description