一个sql查询语句中需用到in条件,因为条件中的id来自不同的表的集合,写了以下两个sql语句,第一种会报错,第二种可以,对此表示疑惑,代码如下:
1、select nvl(a.p_id,d.f_id)||','||nvl(b.c_id,d.f_id)
||','||nvl(c.h_id,d.f_id)||','||d.f_id
from t_property a,
t_car b,
t_human c,
t_claim d
where a.f_id(+)=d.f_ID
and b.Cf_ID(+)=d.f_ID
and c.f_ID(+)=d.f_ID
and d.report_id='9050003202011001094';
result:651,229,651,651;
2、 select a.p_id from t_property a,t_claim d
where a.f_id=d.f_ID and d.report_id='9050003202011001094'
union
select b.c_id from t_car b,t_claim d
where b.f_id=d.f_ID and report_id='9050003202011001094'
union
select c.h_id from t_human c,t_claim d
where c.f_id=d.f_ID and d.report_id='9050003202011001094'
union
select f_id from t_claim d
where d.report_id='9050003202011001094';
result:
651
229
两条sql语句的区别是前者返回一条结果,是符合条件的id的连接串(中间以逗号分隔),后者返回多条结果,如果前者是一个字符串作为in的条件也不应该报错的吧,最多是没有符合条件的结果;后者好理解,不知道是不是我自己的理解有错,还请有想法的朋友给个回复。
如果第一种写法是如我说的是一个id的连接串,in条件中一个数值,如果对这个sql语句返回值加工,类似于java中的split方法,当然要看oracle中有没有类似的函数,是不是也符合要求呢?^-^
分享到:
相关推荐
软件介绍 1、SELECT 查询语句和条件语句 SELECT 查询字段 FROM 表名 WHERE 条件 查询字段:可以使用通配符* 、字段名、字段别名 表名: 数据库.表名 ,表名 常用条件: = 等于 、不等于、in 包含 、 not in 不...
8. DELETE语句:讲解了如何删除数据库中的记录。 9. 子查询:可能涉及了如何在查询中嵌套其他查询以实现更复杂的逻辑。 “9.sql”文件可能包含了一些示例SQL语句,供学习者实际操作和练习。这通常包括创建表、插入...
mysql查询语句汇总,数据库查询指令:mysql查询语句汇总+编程知识+技术开发;mysql查询语句汇总,数据库查询指令:mysql查询语句汇总+编程知识+技术开发;mysql查询语句汇总,数据库查询指令:mysql查询语句汇总+...
1. SELECT语句:用于从表中选取数据。基础形式如`SELECT column1, column2 FROM table_name;` 2. WHERE子句:用于指定查询条件,如`SELECT * FROM table_name WHERE condition;` 3. ORDER BY子句:用于排序结果集,...
查询条件是 SELECT 语句中 WHERE 语句后面的条件,它用于过滤数据。查询条件有多种类型,包括: * 等值条件:使用等号 (=) 来比较两列或列和常量的值。 * 不等值条件:使用不等号 (!=) 来比较两列或列和常量的值。 ...
例如,在Access中,如果想要查询所有以字母“A”开头的名字,可以使用以下SQL语句: ```sql SELECT * FROM 表格名称 WHERE 字段名称 LIKE 'A%'; ``` 这里的`A%`表示所有以“A”开头的名字。 ### 二、使用通配符% `...
数据库查询语句数据库查询语句
在IT领域,数据库管理和查询是核心技能之一,尤其是在企业级应用和数据分析中。ACCESS数据库作为Microsoft Office套件的一部分,提供了一种用户友好的界面来管理数据,并支持SQL(结构化查询语言)进行复杂的数据...
* SELECT 语句:从数据库表中检索数据行和列 * INSERT 语句:向数据库表添加新数据行 * DELETE 语句:从数据库表中删除数据行 * UPDATE 语句:更新数据库表中的数据 二、数据定义 * CREATE TABLE 语句:创建一个...
使用场景为:数据库出现锁,不能查询数据,该sql语句用户查询数据库锁的sql语句,以及解锁数据库锁。
### SQL语句:数据库交互的桥梁 #### 一、SQL语句的基本概念 SQL语句,全称为Structured Query Language(结构化查询语言),是一种专为关系型数据库管理系统设计的标准编程语言。它允许用户通过简单的命令来进行...
数据库 SQL 创建查询语句 一、创建数据库 数据库是关系型数据库管理系统的核心组成部分,用于存储和组织数据。在 SQL Server 2008 中,可以使用对象资源管理器或 T-SQL 语句创建用户数据库。使用对象资源管理器...
掌握这些基本的SQL查询语句是数据库管理的基础,它们允许用户高效地检索、修改和管理数据库中的数据。理解并熟练运用这些语句,无论是进行数据分析还是开发数据库应用程序,都能显著提高工作效率。
* WHERE 语句:用于指定查询的条件 * GROUP BY 语句:用于分组数据 * HAVING 语句:用于指定分组条件 * ORDER BY 语句:用于排序数据 * LIMIT 语句:用于限制查询结果的数量 三、 创建数据库结构 SQL 语句可以用来...
本文档将对ACCESS数据库中常见的SQL语句进行详细的讲解,从基本的SELECT语句到条件查询、谓词In查询、模糊Like查询、空值NULL查询、限制范围Between…And查询等多方面的内容进行了深入的探讨。 一、SELECT语句 ...
利用spl数据库中所学知识编制的高级查询语句
数据库的组合查询和统计查询,里面有很全的查询语句,方便初学者参考
结构化查询语言(Structured Query Language)简称SQL,结构化查询语言是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统; sql 语句就是对数据库进行操作的一种语言。 常见语句 ...
* SELECT 语句:从数据库表中检索数据行和列。 * INSERT 语句:向数据库表添加新数据行。 * DELETE 语句:从数据库表中删除数据行。 * UPDATE 语句:更新数据库表中的数据。 数据概念 * CREATE TABLE 语句:创建一...
表的条件性查询是指根据特定的条件从数据库表中检索数据的操作。 在本节中,我们将学习如何使用单条件筛查和多条件筛查来实现数据查询。单条件筛查是指根据一个条件来筛选出满足该条件的数据记录,而多条件筛查是指...