在oracle数据库中,要求两个字段的和要怎么写sql语句

在oracle数据库中,要求两个字段的和要怎么写sql语句,第1张

在oracle数据库中,要求两个字段的和可以用sql语句(前提是两个字段都是数字型):

SELECT  num1+num2 AS num FROM table_name

其中num1、num2是要求和的两个字段,num是新命名的和字段,table_name是要查询的表名。

扩展资料:

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。

可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

1,如果都是数字类型的直接把这两个字段相加

select

a+b as ab

from S

或者你的意思是 select sum(a+b) from S

2,如果是不同的字段类型就不能求和了,但是可以使用“||”或者CONCAT()函数

2.1 select a||b from S

2.2 select concat(a,b) from S

参考资料来源:百度百科-Oracle数据库

Access数据库中是用VBA来编写自定义的函数,需要通过Dataobject来调用SQL语句才能使某一行中所有字段的值叠加在一起。

Access中是用VBA来编写自定义的函数,需要通过Dataobject来调用SQL语句。Access中用VBA编写的函数可以用在Access查询中。

我在Access中的实现方法如下:

新建一个Module,在里面定义自己的函数。函数定义如下:

FunctionAddString(partstringAsString)AsString

'声明查询语句字符串和字段相加的字符串变量

DimoriginalStr,queryStrAsString

'声明ADO的一个记录对象,注意用New来声明并生成实例

DimmyRecordsetAsNewADODB.Recordset

originalStr=""

'查询语句字符串是通过连接零件编号生成的,注意SQL语句需要引号

queryStr="select*frommaterialwhereparts="""+partstring+""""

myRecordset.OpenqueryStr,CurrentProject.Connection

DoWhileNotmyRecordset.EOF

originalStr=originalStr+myRecordset("module")+","

myRecordset.MoveNext

Loop

'VBA语法,把返回值赋给函数名

AddString=originalStr

EndFunction

看到一个网友解决同样问题的做法,他不是用ADO对象,他用了下面一句:

SetFF=CurrentDb.OpenRecordset(queryStr)

他实际上是隐性用了DAO对象。不过,如果你在VBA中显性声明DAO对象的话,有可能会碰到编译错误,这是因为AccessVBA默认没有包含DAO库的引用。

函数定义好后,就可以用在查询里了,SQL视图下,我的例子的SQL语句如下:

SELECTAddString(parts)ASAllMod,material.parts

FROMmaterial

GROUPBYmaterial.parts

ORDERBYmaterial.parts

MSSQLServer中的例子就很多啦,也是自定义一个函数,然后把自定义的函数用在SQL语句中,我把例子也记下来吧。

createfunctionfn_AddString(@partnumbervarchar(50))

returnsnvarchar(1000)

as

begin

declare@snvarchar(1000)

set@s=''

select@s=@s+module+','frommaterialwhereparts=@partnumber

return@s

end

go

在SQL语句中调用该函数

selectparts,dbo.fn_AddString(parts)asAllModfrommaterial

groupbyparts

————————————————

版权声明:本文为CSDN博主「gracexu」的原创文章,遵循CC4.0BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/gracexu/article/details/2077079


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存