‘壹’ sql怎么定义函数返回多个数值
表中也是要参数的啊,光给表了,人家怎么知道你表里要返回什纯吵么啊~
RETURN @t TABLE【(f char(20),a char(20),b char(6),c datetime, d char(4) )】
【】里面的是你要返回表中的参数
@t是你表名的参数
下面的insert你知道么?就是读入这些轮中参数腊裤山到那个表中
然后返回输出~
‘贰’ 求教sql server子查询返回多个值的处理方法
直绝掘接哪宏咐李纯通过inner 就ok
update a
set a a.a=b.a
from tab1 a
inner join tab2 b on a.b=a.b and a.c=b.c
‘叁’ sql 问题子查询返回的值不止一个。
解决方法如下:
返回一个值:返回多个说明数据库中满足用户查询条件的记录有多个,要返回一个就说明用户的查询条件不够,再加条件控制就行了,比如在语句末尾再加 and ***=‘***’;
如果用户问的是如何在后台程序中接收的话,用List可以,一个节点接收Result的一行值,读取的时候遍历List就行了。
(3)sql子表达式返回多列扩展阅读:
删除表
drop table tabname--这是将表连同表中信息一起删除但是日志文件中会有记录
删除信息
delete from table_name-这是将表中信息删除但是会保留这个表
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1[separator]
‘肆’ SQL问题,子查询返回的值不止一个!
执行后报下面的错误,是哪里出错了?帮看下,谢谢.
"消息 512,级别 16,状态 1,第 1 行
子查询返回的值不止一个。当子查询跟随在 =、!=、<、<=、>、>= 之后,或子查询用作表达式时,这种情况是不允许的。
"
‘伍’ sql 子查询返回值多于一个,当子查询跟随在=、!=、<、>、>=之后,或子查询用作表达式时,这种。。。
这是因为第4,5行查询时返回了多个结果,就会报错,如果你只需要一个结果的话,应该改为:
(select first 1 qtyunit from salorderg where salordicode = salorder.salordicode) as '单位',
(select first 1 qty from salorderg where salordicode = salorder.salordicode)as '数量' ,
这样它只是返回找到的第一个结果,就不会发生错误了。
另外唯腔,如果你需要它返回所有单位/数量的结晌宴果,应该用left outer join,而不是直接select。
select salordcode as '合同号',
(select cname from ccode where ccode=salorder.ccode) as '关联方宴山银',
(select contact from ccode where ccode=salorder.ccode) as '对方当事人',
salorderg.qtyunit as '单位',
salorderg.qty as '数量' ,
rmb as '人民币',
odate as '生效日期',
signsite as '合同履行地点',
(select bname from bcode where bcode =salorder.bcode ) as '业务员/签订人'
from salorder
left outer join salorderg on salorderg.salordicode = salorder.salordicode --新加入的
where rmb>= 6000000 and odate between '2010-1-1' and '2011-8-31'
order by odate;
‘陆’ 怎样在SQL CASE表达式中返回THEN语句的多个值
SQL
case
when是条件语句,是根据不同的条件返回不同的值,并不是返回多个值,比如下面语句,id是1就返回第一个,id是2就返回第二个,没有就返回第0个:
select case id when 1 then '第一个' when 2 thne '第二个' else '第0个' end from 表名