1

私はこのSQLを持っています

SELECT devudp1.deviceoid,devudp1.valueType
  FROM DeviceUdpValues devUDP1 
 WHERE devudp1.udpname='TestUDP' 
   and <<either bdvalue or string value based on user selected value datatype>>

ここで、属性の下に追加したいdevudp1.valueTypeに基づくクエリで

valueType が 3 の場合、上記の select 句にdevudp1.bdvalue ='10'を追加します。それ以外の場合は、 devudp1.bdvalue = 'Hello'で追加する必要があります。

したがって、valueType が 3 の場合の上記のクエリは次のようになります。

SELECT devudp1.deviceoid,devudp1.valueType
  FROM DeviceUdpValues devUDP1
 WHERE devudp1.udpname='TestUDP'
   AND devudp1.bdvalue = '10'

それ以外の場合は次のようになります

SELECT devudp1.deviceoid,devudp1.valueType
  FROM DeviceUdpValues devUDP1
 WHERE devudp1.udpname='TestUDP'
   AND devudp1.stringValue = 'Hello'

誰かがこのロジックを配置する方法を教えてもらえますか

4

1 に答える 1

3

これを試して:

SELECT  devudp1.deviceoid,devudp1.valueType
  FROM  DeviceUdpValues devUDP1 
 WHERE  devudp1.udpname='TestUDP'
   AND  (
         (<USER-SELECTED-VALUE> = 3 AND devudp1.bdvalue ='10') OR
         (<USER-SELECTED-VALUE> <> 3 AND devudp1.stringvalue ='Hello') 
        )
于 2012-07-13T14:53:39.367 に答える