表结构如下:CREATE TABLE EPMUSER.MH_TEST_TB
(
  PJT_NO    VARCHAR2(14)                        NOT NULL,
  STATUS_1  CHAR(3),
  STATUS_2  CHAR(3),
  PM_NO     VARCHAR2(10)
)
现在要得到这样的数据
STATUS_1 = '063' 或者 STATUS_2 = '063'
同时也存在对于 PJT_NO和PM_NO的 条件。我是这样写的 但是得到的结果不对。SELECT *
FROM MH_TEST_TB
WHERE 1 = 1
AND STATUS_1 = '063'
OR  STATUS_2 = '063'
AND PJT_NO LIKE '%20080192%'

解决方案 »

  1.   

    SELECT *
    FROM MH_TEST_TB
    WHERE (STATUS_1 = '063'
    OR  STATUS_2 = '063')
    AND PJT_NO LIKE '%20080192%'
      

  2.   

    SELECT *
    FROM MH_TEST_TB
    WHERE ( STATUS_1 = '063'
    OR  STATUS_2 = '063')
    AND PJT_NO LIKE '%20080192%'
      

  3.   

    是要有刮号的这个逻辑吧:
    SELECT *
    FROM MH_TEST_TB
    WHERE (STATUS_1 = '063'
    OR  STATUS_2 = '063')
    AND PJT_NO LIKE '%20080192%'