有关SQL语句的问题

问题描述

select count(*) from dual where 'A0132' in ( select column_value from table (select split(WMSYS.WM_concat(industrytypeno), ',') from map_industry mi where mi.newmaterial is not null ) )谁能帮我解答一下这段SQL的意思。

解决方案

select split(WMSYS.WM_concat(industrytypeno), ',') from map_industry mi where mi.newmaterial is not null 查出来是一张表 aselect column_value from a 查出来是单列的表Bselect count(*) from dual where 'A0132' in(B表的这一列)
解决方案二:
WMSYS.WM_concat是聚合函数,它会把符合条件的数据用","逗号隔开串联在一起。spilt是你自定义函数,根据上下文分析,它应该解析"aa,bb,cc"这种字符串,返回一个嵌套表(比如:r(1)="aa",r(2)="bb",r(3)="cc")。table (select split(WMSYS.WM_concat(industrytypeno), ',') 这句是通过table函数将嵌套表转化为伪表,放到子查询中,相当于:aabbcc最后外层查询是检索'A0132'在上面结果集的纪录数。明白了吗
解决方案三:
wm_concat(列名),该函数可以把列值以","号分隔起来,并显示成一行
解决方案四:
split(WMSYS.WM_concat(industrytypeno), ',') 这句话用到了两个函数,对一个列处理spilt是分割成(*,‘,’)用逗号分割成列列名应该是:column_value

时间: 2024-09-13 14:48:34

有关SQL语句的问题的相关文章

在ASP中使用SQL语句之9:表单操作

语句 从某个页面表单中取出信息是ASP编程中常见的问题.但是,遍历通过表单传递的记录会花去多长时间呢?这取决于数据库的大小.简单的GUI界面都可能令循环遍历操作耗费太多的时间. 比方说,假设有个团队成员登录到GUI屏幕输入自己的名字姓氏和名字之间用点号连接:amy.cowen.这个值通过表单提交,她的当前项目列表就从数据库中取了出来并显示在屏幕上.为了快速地取出用户的记录以便显示在屏幕上,你可以编写以下代码. 假设HTML页面上包含以下代码:<FORM ACTION="login_post

手把手教你在ASP中使用SQL语句

sql|语句 五花八门的SQL产品多得要命,或许你早顾不得其它甩开袖子就动手干了.但你要同时采用ASP和SQL的话就可能会头晕.MySQL.SQL Server和mSQL都是绝佳的SQL工具,可惜,在ASP的环境下你却用不着它们来创建实用的SQL语句.不过,你可以利用自己掌握的Access知识以及相应的Access技能,再加上我们的提示和技巧,相信一定能成功地在你的ASP网页中加入SQL. 1. SELECT 语句 在SQL的世界里,最最基础的操作就是SELECT 语句了.在数据库工具下直接采用

ASP初学者:教你使用使用SQL语句

sql|初学|语句 五花八门的SQL产品多得要命,或许你早顾不得其它甩开袖子就动手干了.但你要同时采用ASP和SQL的话就可能会头晕.MySQL.SQL Server和mSQL都是绝佳的SQL工具,可惜,在ASP的环境下你却用不着它们来创建实用的SQL语句.不过,你可以利用自己掌握的Access知识以及相应的Access技能,再加上我们的提示和技巧,相信一定能成功地在你的ASP网页中加入SQL. 1. SELECT 语句 在SQL的世界里,最最基础的操作就是SELECT 语句了.在数据库工具下直

关于访问EXCEL时使用SQL语句的问题

问题描述 在访问EXCEL工作表的时候可以使用SQL语句如"select列名from表名"查询数据但是在EXCEL中他默认在第一行的数据作为列名我想把他改为其他行作为列名可以吗?怎样改呢? 解决方案 解决方案二:可以呀,直接写出列名不就好了!-解决方案三:我也想知道,正在找這方面的資料~~~~~解决方案四:接分先!

Sql语句,当在页面插入一个字段的时候,和数据库中的表字段进行对比,有这个名字就数量相加

问题描述 Sql语句,当在页面插入一个字段的时候,和数据库中的表字段进行对比,有这个名字就数量相加 Sql语句,当在页面插入一个字段的时候,和数据库中的表字段进行对比,有这个名字就数量相加,没有的话重新加入一条新的记录,Sql语句怎么实现? 当我页面添加的是"利群"时,添加一盒,那么数据库中利群这条记录中的num字段中的4变成5,如果是页面添加的是"黄鹤楼"同理,如果添加的不是name字段中的这两个,就新插入一条数据.Sql语句怎么写??急急急. 是Mysql的数据

sql语句-mysql定时任务 写下SQL语句

问题描述 mysql定时任务 写下SQL语句 想让MYSQL里面的jpzh表里面的isstaus在晚上00定时更新 那个大侠 写下SQL语句 解决方案 CREATE EVENT e_testON SCHEDULE EVERY 1 DAYSTARTS '2014-12-04 00:00:00'DO UPDATE jpzh SET isstaus=.....; 从 2014-12-04 00:00:00 开始,每天做一次 解决方案二: 你的逻辑好像不太对,按常理开发模式,一般是从应用端控制时间,然后

json-关于asp josn 接到参数 执行 sql语句 报错问题

问题描述 关于asp josn 接到参数 执行 sql语句 报错问题 <%Dim memberSet member = jsObject() dim dbconnectionuplistDBPathSQLSortLboundUboundDim id=request(""jsoncallback"")set dbconnection=Server.CreateObject(""ADODB.Connection"") DBP

跟踪oracle中sql语句执行过程及相关知识拓展

select * from v$sqlarea; select * from v$sqlarea where first_load_time>'2010-11-27/09:30:00';         这个方法查询结果每条记录显示一条查询语句,且只能查询sql_text小于1000字符的,多余的会被截断.         改进一下: select * from v$sqlarea where first_load_time>'2010-11-27/09:30:00' and sql_text

sql语句-sql 数据库问题,如何得到我想要的表达

问题描述 sql 数据库问题,如何得到我想要的表达 现在表单是这样的怎么把它变成下面这样的求大神解答 解决方案 可以把你的问题说清楚一些吗,我没看懂你要表达什么意思 解决方案二: 这很简单啊,直接在sql语句中把所有需要的数据查询出来输出就行 解决方案三: 1.如果是直接用sql语句查询显示的话,可以参考这边 http://blog.csdn.net/smile725775/article/details/6977937 ,但是这个有一个要求就是工序的最大数目是固定的,你能提前知道最多有多少个工

sql语句怎么调用变量?

问题描述 sql语句怎么调用变量? 我在存储过程里面定义一个变量,然后根据传进来的参数判declare @a ; if(isnull(@abc0)>0) set @a= ' and name=""+@abc+""' select * from p where id=1 @abc....像这样 在查询语句里面加这个 怎么做?这个查询语句是很长的 有上千行改成执行字符串的 exec('select ..'+@a+'...') 这种应该不好把 解决方案 既然是存储过