数据库查询出来的是空,但是我要让它当IF条件,怎么实现

数据库查询出来的是空,但是我要让它当IF条件,怎么实现,第1张

很简单里面是空的肯定是什么都没有,你可以随便假设一个值

if str("lytype")<>"hehe" then

a=1

else

a=2

end if

里面是空肯定不等于hehe。。

呵呵,有的时候写程序也需要换位思考

SELECT

'Price

Category'

=

CASE

WHEN

price

IS

NULL

THEN

'Not

yet

priced'

WHEN

price

<

10

THEN

'Very

Reasonable

Title'

WHEN

price

>=

10

and

price

<

20

THEN

'Coffee

Table

Title'

ELSE

'Expensive

book!'

END

先说下,case要和end一块用。

从上面可以看出,case里用的是when

then

形式,从整个case

end来看,它是从自己的多个语句中择一输出结果。

如果是把when

看成if

,就好理解多了,if语句就像是筛子里的石子,而case

end就是筛子,只会允许一个符合它网眼大小的石头出去,并且会将这个石子打包成一个可用的表达式。

一、规范数据入库流程

规范化的 *** 作流程是避免 *** 作错误产生的有效手段。据此,对航空物探数据入库过程中的数据质量检查内容和方法进行了分析,归纳出系统检查9项和拓扑检查5项(表5-5)。考虑到在数据入库过程中,需要给数据采集人员授予数据库数据编辑和删除权限(以便编辑录入的错误数,删除导入的不正确数据),在编辑或删除数据库数据时,有可能错误地编辑或删除已归档数据,破坏归档数据的完整性和正确性等因素,提出了航空物探数据库入库数据质量检查的规范化流程(图5-2)。

表5-5 入库数据系统检查和拓扑检查

1)创建项目,在数据入库前先创建项目,按项目导入或录入数据。

2)入库前系统检查,导入或录入的入库数据必须通过系统的入库前检查(数据唯一性、数据类型、缺项检查),才能保存到采集库中。

3)数据进入采集库后,须接受入库后系统检查。若是空间数据必须接受拓扑检查,再与原数据文件进行逐字节比较检查,均通过后,进人工检查。

4)人工检查与人工复核,对项目概况数据、空间要素类数据(图形和属性)、文字数据、图件数据、可制成图件的对象类数据应进行人工检查与人工复核。检查方法是人工比对。该方法劳动强度大,检查人员要有较强的责任心才能发现其中的错误。人工检查与人工复核的工作内容相同,系统要求人工检查与人工复核必须由不同人员完成,加强数据检查力度,尽量消除人为因素造成的错误。

图5-2 规范化的数据入库流程

5)系统归档检查,对入库数据的非空字段进行的检查。系统归档检查通过后,入库数据可归档存入资料库。

经测试,严格按照该数据入库流程开展数据入库工作。航空物探资料库数据与入库前原数据文件数据的一致性可达100%。

该流程将入库数据与资料库数据分离,单独建立一个数据采集数据库(简称“采集库”),把待入库数据暂存在采集库中。入库数据在采集库中接受各项质量检查和编辑,或删除 *** 作,直至达到数据入库质量要求,归档进入资料库(进入资料库的数据除数据库管理员外其他用户是无权对其实施编辑或删除 *** 作的),保证资料库数据的一致性和完整性,为整体提高航空物探数据库的质量提供了保障。

二、规则化数据检查方法

50多年来航空物探取得大量的基础资料和成果资料,这些资料在地学基础研究、油气资源评价等领域发挥的重要作用日益显现。人们越来越重视利用航空物探资料来解决所遇到的地质问题等,同时人们也很想了解所用资料的来源、质量等信息(如资料的测量年代、测量方法、仪器精度、飞行高度、定位精度,数据处理方法等),来评价问题解决的可信度。这也正是本信息系统建设者想要给用户提供的。历史已既成事实,许多与资料质量有关的信息,例如在使用数字收录以前有不少项目的测量仪器精度、飞行高度、定位精度等现已处可寻。

过去的不足证明现在的进步,尊重历史尽力适应未来的技术发展,是本信息系统建设所遵循的宗旨。因此,根据资料的实际情况,提出了入库数据有效性检查的规则化方法,较好地解决了不同年代资料信息不齐全的数据入库质量检查问题。

按照通常做法,在软件代码中直接编写出每个数据库表需要做检查字段的有效性检查代码。

//通常方法的数据进行质量检查

//选择表名,分别为每个表编写检查代码

Switch(表名)

{

Case表名1:

检查数据//获取表的检查数据

Switch(表字段名)

{

Csae表字段1://如字段检查项包括非空检查、范围检查等

//依据不同检查规则检查数据

If(检查数据[表字段1]!=空)…//非空检查

…//其他检查

If((检查数据[表字段1]>值1)&&(检查数据[表字段1]<值n))//范围检查

Break;

…//对应不同字段名

Csae表列名n:

…//对应字段数据检查

Break;

}

Break;

…//对应不同表数据检查

Csae表名n:

…//对应表数据检查

Break;

}

本系统采用规则化方法检查入库数据。在完成数据库结构设计之后,针对每张数据库表中每个字段制定了入库数据正确性的检查规则,建立动态检查规则表,针对不同的检查规则编写检查函数,从数据库中获取被检查表数据库字段的检查规则,对入库数据进行检查的。规则化方法代码实现的示例如下:

//本系统对表数据进行质量检查

获取检查数据//检查数据包括表名、字段名、数据

获取规则数据//检查规则包括字段名、检查类型等

获取规则值数据//检查规则对应的值

//依据不同检查规则检查数据

Switch(规则数据[检查规则])

{

Case检查规则规则1://非空检查

If(检查数据[检查字段名]!=空)……

Break;

…//其他检查规则

Csae检查规则规则n://选择范围检查

If(规则值数据is包含检查数据[检查字段名])…

Break;

}

系统检查采用传统检查方法实现代码量约15345行(表5-6),代码开发工作量很大,且灵活性差,不利于后期代码维护和扩展,如添加表或表添加检查字段后都需要对代码进行重新修改和编译。而本系统的规则化方法代码量仅495行(表5-6),只有传统检查方法代码的322%,且添加表或表添加检查字段后不需要修改代码;用户在数据入库时,根据实际需要直接修改检查规则表即可。

表5-6 系统检查两种实现方式代码量对比表

第一个空格内填,D3>=20%;第二个空格内填,较快;第三个空格内,不填或者空格。

Excel中IF函数的表达式为:IF(logical_test,value_if_true,value_if_false),Logical_test表示计算结果为TRUE或FALSE的任意值或表达式。Value_if_true表示的是 logical_test为TRUE时返回的值Value_if_false表示的是 logical_test 为 FALSE 时返回的值。

第一个空格内填写的D3>=20%,意思是判断单元格D3(需要比较的数据所在单元格)内的数据是否大于等于20,第二个空格内填较快,表示判断为真时,输出“较快”。第三个空格内,填空格或者不填,表示,判断不成立时,输出空格。

扩展资料:

EXCEL中数据库和清单管理函数

1、AVERAGE 返回选定数据库项的平均值

2、COUNT 计算数据库中包含数字的单元格的个数

3、COUNTA计算数据库中非空单元格的个数

4、DGET 从数据库中提取满足指定条件的单个记录

5、MAX 返回选定数据库项中的最大值

6、MIN 返回选定数据库项中的最小值

7、PRODUCT 乘以特定字段(此字段中的记录为数据库中满足指定条件的记录)中的值

8、STDEV 根据数据库中选定项的示例估算标准偏差

9、STDEVP 根据数据库中选定项的样本总体计算标准偏差

10、SUM 对数据库中满足条件的记录的字段列中的数字求和

11、VAR 根据数据库中选定项的示例估算方差

12、VARP 根据数据库中选定项的样本总体计算方差

13、GETPIVOTDATA 返回存储在数据透视表中的数据

参考资料来源 :百度百科-excel函数

这样的语法肯定是可以的。关键是你的or,是不是你的逻辑分析出了问题?你的这个判断,只有一种情况,会不执行then后边的情况,就是a = 1 同时 b = 2同时 c = 3的时候,否则,都执行then后边的语句。是不是你的逻辑出问题,出了a = 1 and b = 2 and c = 3,那么其他时候,都符合你这个判断。

你看看你所说的条件不成立的数据是什么,如果有困惑,可以把你指的这条数据贴出来。

Oracle系统,即是以Oracle关系数据库为数据存储和管理作为构架基础,构建出的数据库管理系统。 Oracle,世界第一个支持SQL语言的商业数据库,定位于高端工作站,以及作为服务器的小型计算机,如IBM P系列服务器、HP的Integraty服务器、Sun Fire服务器。Oracle公司的整个产品线包括数据库服务器、企业商务应用套件、应用开发和决策支持工具。

yze_p sql

yze_p sql

      BEGIN SYS DBMS_UTILITY ANALYZE_SCHEMA (  &OWNER PUTE ); END; /

pop_vol sql

pop_vol sql 

    insert into utl_vol_facts select table_name  NVL ( num_rows   ) as num_rows  trunc ( last_ yzed ) as meas_dt from all_tables

   or just user_tables 

      where owner in ( &OWNER )

or a ma separated list of owners

      / mit /

C 每周处理程序

nextext sql

nextext sql To find tables that don t match the tablespace default for NEXT extent The implicit rule here is that every table in a given tablespace should use the exact same value for NEXT which should also be the tablespace s default value for NEXT his tells us what the setting for NEXT is for these objects today   / /

      SELECT segment_name  segment_type  ds next_extent as Actual_Next  dt tablespace_name  dt next_extent as Default_Next FROM dba_tablespaces dt  dba_segments ds WHERE dt tablespace_name = ds tablespace_name AND dt next_extent !=ds next_extent AND ds owner = UPPER (  &OWNER  ) ORDER BY tablespace_name  segment_type  segment_name;

existext sql 

existext sql To check existing extents This tells us how many of each object s extents differ in size from  the tablespace s default size If this report shows a lot of different  sized extents your free space is likely to bee fragmented If so  this tablespace is a candidate for reanizing / /

      SELECT segment_name  segment_type  count() as nr_exts  sum ( DECODE ( dx bytes dt next_extent ) ) as nr_illsized_exts  dt tablespace_name  dt next_extent as dflt_ext_size FROM dba_tablespaces dt  dba_extents dx WHERE dt tablespace_name = dx tablespace_name AND dx owner =  &OWNER GROUP BY segment_name  segment_type  dt tablespace_name  dt next_extent;

No_pk sql

no_pk sql To find tables without PK constraint / /

      SELECT table_name FROM all_tables WHERE wner =  &OWNER MINUS SELECT table_name FROM all_constraints WHERE wner =  &&OWNER AND constraint_type =  P  ;

disPK sql

disPK sql To find out which primary keys are disabled   / /

      SELECT owner  constraint_name  table_name  status FROM all_constraints WHERE wner =  &OWNER  AND status =  DISABLED  AND constraint_type =  P ;

nonuPK sql

nonuPK sql To find tables with nonunique PK indexes Requires that PK names follow a naming convention An alternative query follows that   does not have this requirement but runs more slowly     

   / /

      SELECT index_name  table_name  uniqueness FROM all_indexes WHERE index_name like  &PKNAME% AND wner =  &OWNER  AND uniqueness =  NONUNIQUE SELECT nstraint_name  i tablespace_name  i uniqueness FROM all_constraints c   all_indexes i WHERE c owner = UPPER (  &OWNER  ) AND i uniqueness =  NONUNIQUE AND nstraint_type =  P  AND i index_name = nstraint_name

mkrebuild_idx sql

mkrebuild_idx sql       Rebuild indexes to have correct storage parameters / /

      SELECT  alter index   || index_name ||   rebuild    tablespace INDEXES storage  ||   ( initial   K next   K pctincrease   ) ;  FROM all_indexes WHERE ( tablespace_name !=  INDEXES OR next_extent != (      ) ) AND wner =  &OWNER /

datatype sql

datatype sql To check datatype consistency beeen o environments / /

      SELECT table_name  column_name  data_type  data_length  data_precision  data_scale  nullable FROM all_tab_columns   first environment WHERE wner =  &OWNER MINUS SELECT table_name  column_name  data_type  data_length  data_precision  data_scale  nullable FROM all_tab_columns@&my_db_link   second environment WHERE wner =  &OWNER order by table_name  column_name

obj_coord sql

obj_coord sql To find out any difference in objects beeen o instances / /       lishixinzhi/Article/program/Oracle/201311/17515

零基础学习java可按照这份大纲来进行学习

第一阶段:Java专业基础课程

阶段目标:

1 熟练掌握Java的开发环境与编程核心知识

2 熟练运用Java面向对象知识进行程序开发

3 对Java的核心对象和组件有深入理解

4 熟练应用JavaAPI相关知识

5 熟练应用JAVA多线程技术

6 能综合运用所学知识完成一个项目

知识点:

1、基本数据类型,运算符,数组,掌握基本数据类型转换,运算符,流程控制。

2、数组,排序算法,Java常用API,类和对象,了解类与对象,熟悉常用API。

3、面向对象特性,集合框架,熟悉面向对象三大特性,熟练使用集合框架。

4、IO流,多线程。

5、网络协议,线程运用。

第二阶段:JavaWEB核心课程

阶段目标:

1 熟练掌握数据库和MySQL核心技术

2 深入理解JDBC与DAO数据库 *** 作

3 熟练运用JSP及Servlet技术完成网站后台开发

4 深入理解缓存,连接池,注解,反射,泛型等知识

5 能够运用所学知识完成自定义框架

知识点:

1、数据库知识,范式,MySQL配置,命令,建库建表,数据的增删改查,约束,视图,存储过程,函数,触发器,事务,游标,建模工具。

2、深入理解数据库管理系统通用知识及MySQL数据库的使用与管理。为Java后台开发打下坚实基础。Web页面元素,布局,CSS样式,盒模型,JavaScript,jQuery。

3、掌握前端开发技术,掌握jQuery。

4、Servlet,EL表达式,会话跟踪技术,过滤器,FreeMarker。

5、掌握Servlet相关技术,利用Servlet,JSP相关应用技术和DAO完成B/S架构下的应用开发。

6、泛型,反射,注解。

7、掌握JAVA高级应用,利用泛型,注解,枚举完成自己的CRUD框架开发为后续框架学习做铺垫。

8、单点登录,支付功能,项目整合,分页封装熟练运用JSP及Servlet核心知识完成项目实战。

第三阶段:JavaEE框架课程

阶段目标:

1 熟练运用Linux *** 作系统常见命令及完成环境部署和Nginx服务器的配置

2 熟练运用JavaEE三大核心框架:Spring,SpringMVC,MyBatis

3 熟练运用Maven,并使用SpringBoot进行快速框架搭建

4 深入理解框架的实现原理,Java底层技术,企业级应用等

5 使用Shiro,Ztree和Spring,SpringMVC,Mybaits完成企业项目

知识点:

1、Linux安装配置,文件目录 *** 作,VI命令,管理,用户与权限,环境部署,Struts2概述,hiberante概述。

2、Linux作为一个主流的服务器 *** 作系统,是每一个开发工程师必须掌握的重点技术,并且能够熟练运用。

3、SSH的整合,MyBatis,SpringMVC,Maven的使用。

4、了解AOP原理,了解中央控制器原理,掌握MyBatis框架,掌握SSM框架的整合。

5、Shiro,Ztree,项目文档,项目规范,需求分析,原型图设计,数据库设计,工程构建,需求评审,配置管理,BUG修复,项目管理等。

6、独立自主完成一个中小型的企业级综合项目的设计和整体架构的原型和建模。独立自主完成一个大型的企业级综合项目,并具备商业价值

以上就是关于数据库查询出来的是空,但是我要让它当IF条件,怎么实现全部的内容,包括:数据库查询出来的是空,但是我要让它当IF条件,怎么实现、数据库中case语句和if语句的区别、数据入库流程等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9866933.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存