SQL Server中一个表中的一列为varchar型,长度12,啥语句可以在不满足12位前面补上”0“
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server中一个表中的一列为varchar型,长度12,啥语句可以在不满足12位前面补上”0“相关的知识,希望对你有一定的参考价值。
比如”239494747“ 执行什么语句后可以变成“0239494747”
参考技术A right('000000000000'+field_name,12) 参考技术B 用&好一点,+容易引起歧义,另外varchar类型字符应该用"",''未必行得通right("000000000000"&field_name,12)
从oracle表中选择sql server表中的列
【中文标题】从oracle表中选择sql server表中的列【英文标题】:select from oracle table where column in sqlserver table 【发布时间】:2016-07-16 16:41:38 【问题描述】:我在 oracle 中有一个表,其中包含客户记录,在 Microsoft SQL Server 中有另一个表,其中包含某些标记客户的 30,000 多条记录。现在,我想从 oracle 中选择列在 Microsoft SQL Server 中的值。像这样:
SELECT oracleTable.custname
FROM oracleTable
WHERE oracleTable.idcol IN (/*LIST OF VALUES FROM SQL SERVER TABLE*/)
而且我没有权限在 oracle 数据库上创建表。
我必须在 C# 中创建一个函数,以这种格式返回列表值 '1','2','3','4'
并将其与我的命令文本连接,但 Microsoft SQL 服务器表包含超过 30,000 条记录,oracle 抱怨它只允许 1,000在一个列表中。
有人知道解决方法(C# 或 TSQL)吗?
【问题讨论】:
您是否在 Google 中搜索过答案 让我为你做这件事.. google.co.in/… 是的,我没有找到任何有用的答案。 我想过使用链接服务器,但我什至不允许在服务器上安装任何东西。在他们决定是否为我安装之前,我必须通过一些命令链发送请求。 【参考方案1】:在 Oracle 中创建一个临时表,插入值,然后加入。
【讨论】:
【参考方案2】:考虑到您提到的限制,我认为您应该考虑使用 C# 对其进行编码......您将拥有 DataTables 的灵活性。用 SQL Server 数据填充一个 DataTable,用 Oracle 填充另一个。现在您可以使用 Linq 获取所需的数据了。
希望这会有所帮助。
【讨论】:
以上是关于SQL Server中一个表中的一列为varchar型,长度12,啥语句可以在不满足12位前面补上”0“的主要内容,如果未能解决你的问题,请参考以下文章
C#中如何用Linq在SQL Server的表中多列检索多个关键字