数据库表
ID          Tag                                                Value                                              Time
----------- -------------------------------------------------- -------------------------------------------------- --------------------------------------------------
1           AB11BD008                                          0                                                  NULL
2           AB11CD004                                          0                                                  NULL
3           AB11DD006                                          1                                                  NULL
4           AB11ED004                                          0                                                  NULL
5           AB11FD009                                          1                                                  NULL
6           AB15WM971-WI                                 450                                                NULL上浆泵启停位号:AB11BD008 / AB11CD004 / AB11DD006 / AB11ED004 / AB11FD009
张力位号:AB15WM971-WI 
开机:上浆泵启停位号任意三个 = 1 并且 张力位号 > 300
停机:上浆泵启停位号任意三个 = 0 或者 张力位号 < 300

解决方案 »

  1.   


    我写过有一些简单点的SQL
    例如:
    底辊运转位号:BB1866005 /  BB1866004
    开机:底辊运转位号任意一个 > 120
    停机:底辊运转位号全部 < 120SELECT (CASE
                WHEN
        (
            SELECT value FROM dbo.picomp WHERE tag = 'BB1866005'
        ) < 120
        AND
        (
            SELECT value FROM dbo.picomp WHERE tag = 'BB1866004'
        ) < 120 THEN
                    '停机'
                ELSE
                    '开机'
            END
           ) AS result,time
    FROM dbo.tab
    WHERE tag = 'BB1866004';
      

  2.   

    ID          Tag1                      Tag2                            Value1                Value2                Time
    ----------- -----------------------  --------------------------- ------------------------  --------------------------
    1           AB11BD008           NULL                               0                        0                        NULL
    2           AB11CD004           AB15WM971-WI             0                        450                   NULL
    3           AB11DD006                                                   1                                                  NULL
    4           AB11ED004                                                    0                                                  NULL
    5           AB11FD009                                                    1                                                  NULL假设表设计成这样,张力位编号是Tag2
    开机:select distinct Tag1,Tag2 from tableName where Value1=1 and Value2>300 --查询条数>=3就可以开机
    关机:
    自己写