SQL查询条件中操作符暗含该字段不为空
2009-04-22 12:34
253 查看
--公文提醒列表的SQL
select a.GW_ID,
a.CMPY_ID,
a.DEPT_ID,
a.DEPT_TOP_ID,
a.DEPT_NAME,
a.DEPT_TOP_NAME,
a.USER_ID,
a.GW_BEGIN_TIME,
a.GW_END_TIME,
a.TMPL_TYPE_CODE,
a.TMPL_ID,
a.GW_TYPE,
a.GW_STATUS,
a.GW_TITLE,
a.GW_TOPIC,
a.GW_PAGE,
a.GW_MEMO,
a.GW_SECRET,
a.GW_EMERGENCY,
a.GW_MAIN_TO,
a.GW_COPY_TO,
a.GW_COPYUP_TO,
a.GW_COSIGN_TO,
a.GW_SEND_TO,
a.GW_PRINT_TO,
a.GW_YEAR,
a.GW_YEAR_NUMBER,
a.GW_YEAR_CODE,
a.GW_FILE_TYPE,
a.GW_FILE_HEAD,
a.GW_FILE_END,
a.GW_SAVE_PERIOD,
a.GW_COPIES,
a.GW_CONTACT_ID,
a.GW_CONTACT_NAME,
a.GW_CONTACT_PHONE,
a.GW_CW_DEPT_ID,
a.GW_CW_DEPT_NAME,
a.GW_CW_DATE,
a.GW_SIGN_DATE,
a.PRINT_STRING,
a.DEL_FLAG,
a.FIELD,
a.USER_NAME,
a.WF_ACT_ID,
a.MIND_CONTENT,
a.GW_FROM_CODE,
a.GW_REG_NUMBER,
a.GW_CODE,
a.GW_CODE_TIME,
a.GW_SIGN_NAME,
a.MIND_CODE,
a.GW_DO_VIEW,
a.GW_SECRET_PERIOD,
a.NEED_ARCH,
a.ARCHIVES_DATE,
a.BOX_NUM,
a.SHUSHENG_PRINT_COPIES,
a.GW_IS_DEPLOYED,
a.GW_YEAR_CODE_CAN_DUP,
a.GW_QUERY_FIELD,
a.GW_END_USER_ID,
a.GW_END_USER_NAME,
a.GW_END_DEPT_ID,
a.GW_END_DEPT_NAME,
a.GW_END_DEPT_TOP_ID,
a.GW_END_DEPT_TOP_NAME,
a.GW_SHOUWEN_BL_TYPE,
a.GW_ARCHIVES_FLAG
from TBL_MSV_GONGWEN a
where CMPY_ID = 3055
and GW_STATUS <> 1
-- (1) and (GW_FILE_END <> ' 123' or GW_FILE_END ='123 ' or GW_FILE_END IS NULL)--办理期限不等于空的
-- (2) and GW_FILE_END <> '123 '
-- and GW_FILE_END is not null
order by GW_FILE_END desc;
解释:
(1)只有这三个条件或运算才组成全集,与不加入这个条件一样。
(2)<> 或 = 等操作符都暗示了左边的字段不为null,GW_FILE_END <> ' 123'相当于(GW_FILE_END <> '123 ' and GW_FILE_END is not null)
select a.GW_ID,
a.CMPY_ID,
a.DEPT_ID,
a.DEPT_TOP_ID,
a.DEPT_NAME,
a.DEPT_TOP_NAME,
a.USER_ID,
a.GW_BEGIN_TIME,
a.GW_END_TIME,
a.TMPL_TYPE_CODE,
a.TMPL_ID,
a.GW_TYPE,
a.GW_STATUS,
a.GW_TITLE,
a.GW_TOPIC,
a.GW_PAGE,
a.GW_MEMO,
a.GW_SECRET,
a.GW_EMERGENCY,
a.GW_MAIN_TO,
a.GW_COPY_TO,
a.GW_COPYUP_TO,
a.GW_COSIGN_TO,
a.GW_SEND_TO,
a.GW_PRINT_TO,
a.GW_YEAR,
a.GW_YEAR_NUMBER,
a.GW_YEAR_CODE,
a.GW_FILE_TYPE,
a.GW_FILE_HEAD,
a.GW_FILE_END,
a.GW_SAVE_PERIOD,
a.GW_COPIES,
a.GW_CONTACT_ID,
a.GW_CONTACT_NAME,
a.GW_CONTACT_PHONE,
a.GW_CW_DEPT_ID,
a.GW_CW_DEPT_NAME,
a.GW_CW_DATE,
a.GW_SIGN_DATE,
a.PRINT_STRING,
a.DEL_FLAG,
a.FIELD,
a.USER_NAME,
a.WF_ACT_ID,
a.MIND_CONTENT,
a.GW_FROM_CODE,
a.GW_REG_NUMBER,
a.GW_CODE,
a.GW_CODE_TIME,
a.GW_SIGN_NAME,
a.MIND_CODE,
a.GW_DO_VIEW,
a.GW_SECRET_PERIOD,
a.NEED_ARCH,
a.ARCHIVES_DATE,
a.BOX_NUM,
a.SHUSHENG_PRINT_COPIES,
a.GW_IS_DEPLOYED,
a.GW_YEAR_CODE_CAN_DUP,
a.GW_QUERY_FIELD,
a.GW_END_USER_ID,
a.GW_END_USER_NAME,
a.GW_END_DEPT_ID,
a.GW_END_DEPT_NAME,
a.GW_END_DEPT_TOP_ID,
a.GW_END_DEPT_TOP_NAME,
a.GW_SHOUWEN_BL_TYPE,
a.GW_ARCHIVES_FLAG
from TBL_MSV_GONGWEN a
where CMPY_ID = 3055
and GW_STATUS <> 1
-- (1) and (GW_FILE_END <> ' 123' or GW_FILE_END ='123 ' or GW_FILE_END IS NULL)--办理期限不等于空的
-- (2) and GW_FILE_END <> '123 '
-- and GW_FILE_END is not null
order by GW_FILE_END desc;
解释:
(1)只有这三个条件或运算才组成全集,与不加入这个条件一样。
(2)<> 或 = 等操作符都暗示了左边的字段不为null,GW_FILE_END <> ' 123'相当于(GW_FILE_END <> '123 ' and GW_FILE_END is not null)
相关文章推荐
- SQL一次性查询一个字段不同条件下的统计结果
- sql查询时,根据特定的条件给表的某一个字段赋值
- oralce 提高查询效率 给条件字段添加索引 sql
- SQL 两表关联查询 where 条件中等号两端字段顺序对效率的影响
- 将SQL查询分组后获得的结果中的某字段按照条件相加
- sql查询语句查询条件字段的拼装
- SQL按同字段的两种条件查询数量
- Oracle clob类型的字段作为查询条件的sql语句写法
- 将SQL查询分组后获得的结果中的某字段按照条件相加
- 【SQL】按字段分组查询符合条件记录的方法
- 解决pl/sql developer 中文字段显示乱码或无法用中文作查询条件的问题
- 一个字段多个条件 查询满足条件数量的sql
- 当只有一个输入条件的时匹配数据库表中多个字段模糊查询的SQL语句
- sql查询 同一个字段 同时满足多个条件
- JavaSQL配置文件查询条件匹配字段是Date时注意事项
- sql 查询一个表信息 条件为该表一个字段大于对应(必须该表相对应的Id)另外一个表的总数
- C# SqlServer 未定字段未定条件的组合查询写法
- 87 thinkphp 和sql查询条件为某字段不为空的情况
- 使用正则表达式获取Sql查询语句各项(表名、字段、条件、排序)
- SQL 两表关联查询 where 条件中等号两端字段顺序对效率的影响