SQL拼接字段数据
查询语句:
SELECT
STUFF
(
(
SELECT
',' + --分隔符
KeyID --查询字段
FROM #tmp --查询数据表
WITH(NOLOCK)
WHERE 1=1 --查询条件
FOR XML PATH('')
),
1,-- 0:NULL 1:原样输出 2++:首位添加分隔符
1,-- N:截取 N - Len 的字符
''-- 在字符串首尾添加的符号
)
测试语句:
IF EXISTS(SELECT * FROM tempdb..sysobjects where id=object_id('tempdb..#tmp')) --判断临时表【#tmp】是否存在
BEGIN
DROP TABLE #tmp --删除临时表
END CREATE TABLE #tmp --创建临时表
(
KeyID VARCHAR(36),
KeyValue VARCHAR(max)
) --项临时表插入测试数据
INSERT INTO #tmp VALUES(newid(),'数据一')
INSERT INTO #tmp VALUES(newid(),'数据二') --查询语句 --单个字段
SELECT
STUFF
(
(
SELECT
',' + --分隔符
KeyID --查询字段
FROM #tmp --查询数据表
WITH(NOLOCK)
WHERE 1=1 --查询条件
FOR XML PATH('')
),
1,-- 0:NULL 1:原样输出 2++:首位添加分隔符
1,-- N:截取 N - Len 的字符
''-- 在字符串首尾添加的符号
) /*--多字段组合
SELECT
STUFF
(
(
SELECT
',KeyID:'+ KeyID + ';KeyValue:' + KeyValue --查询字段
FROM #tmp --查询数据表
WITH(NOLOCK)
WHERE 1=1 --查询条件
FOR XML PATH('')
),
1,-- 0:NULL 1:原样输出 2++:首位添加分隔符
1,-- N:截取 N - Len 的字符
''-- 在字符串首尾添加的符号
)
*/
查询结果(注:具体结果由自动生成的KeyID决定):
1、单字段:
1B0EC911-5C2B-4FDE-87BB-62981DE2030D,0527DF18-9EDD-484D-B770-B24B13C68CA1
2、多字段组合:
KeyID:33C28B1E-3F75-4119-A944-1DB7541088E0;KeyValue:数据一,
KeyID:4ECF1696-7DB6-43C7-8182-22EEF676E2CF;KeyValue:数据二
说明:
1、数据库表与临时表查询方式一样,替换表和字段即可,谢谢。
SQL拼接字段数据的更多相关文章
- sql多字段分组排序显示全部数据
建表sql CREATE TABLE `tbl_demo` ( `id` ) COLLATE utf8_bin NOT NULL, `payer_name` ) COLLATE utf8_bin DE ...
- resultset 对象获取行字段数据时报:java.sql.SQLException: Column 'id' not found.
resultset 对象获取行字段数据时报:java.sql.SQLException: Column 'id' not found. 代码: String sql="SELECT d.co ...
- 中等难度SQL语句(存储过程,分页,拼接字段、游标,日期类型转换,动态行转列,视图)汇总
一.创建存储过程 if Exists(select name from sysobjects where NAME = 'sp1LoginUser' and type='P')drop procedu ...
- SQL Server 变更数据捕获(CDC)监控表数据
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 实现过程(Realization) 补充说明(Addon) 参考文献(References) ...
- SQL Server 迁移数据到MySQL
一.背景 由于项目开始时候使用的数据库是SQL Server,后来把存储的数据库调整为MySQL,所以需要把SQL Server的数据转移到MySQL:由于涉及的表比较多,所以想在MySQL中生成对应 ...
- PHP如何通过SQL语句将数据写入MySQL数据库呢?
1,php和MySQL建立连接关系 2,打开 3,接受页面数据,PHP录入到指定的表中 1.2两步可直接使用一个数据库链接文件即可:conn.php <?phpmysql_connect(&qu ...
- 《SQL Server企业级平台管理实践》读书笔记——SQL Server中数据文件空间使用与管理
1.表和索引存储结构 在SQL Server2005以前,一个表格是以一个B树或者一个堆(heap)存放的.每个B树或者堆,在sysindexes里面都有一条记录相对应.SQL Server2005以 ...
- 通过Sql语句导数据
在通过SQL Server向导中的SQL语句导数据时,默认情况下源表中的nvarchar字段类型会变成202,解决此问题的方法是,要重新选择一下对应的数据接收表.
- COALESCE在SQL拼接中的大用途
SQL拼接可以使得代码比较灵活,不会那么死板,对于维护也比较方便. 下面是简单的SQL拼接,同时也包含了隐式游标的概念吧,可以遍历表中的每一个字段 -------------------------- ...
随机推荐
- 实现ABP中Person类的权限功能
菜单项的显示功能已经完全OK了.那么我们就开始制作视图功能吧. 首先测试接口是否正常 我们通过代码生成器将权限和application中大部分功能已经实现了.那么我们来测试下这些接口ok不. 浏览/a ...
- Entity Framework 6 Recipes 2nd Edition(11-11)译 -> 在LINQ中调用数据库函数
11-11. 在LINQ中调用数据库函数 问题 相要在一个LINQ 查询中调用数据库函数. 解决方案 假设有一个任命(Appointment )实体模型,如Figure 11-11.所示, 我们想要查 ...
- myeclipse 无法启动 java.lang.IllegalStateException: Unable to acquire application service. Ensure that the org.eclipse.core.runtime bundle is resolved and started (see config.ini).
把myeclipse10 按照目录完整拷贝到了另外一台电脑, 另外的目录 原安装目录 D\:\soft\i\myeclipse10 新安装目录 E\:\soft\myeclipse10 双击启动失败, ...
- Git(进击学习:远程仓库操作)-V3.0
1.查看当前的远程仓库:git remote或git remote -v 2.添加远程仓库:git remote add [shortname] [url] git remote add pb git ...
- ASP.NET MVC5+EF6+EasyUI 后台管理系统(61)-如何使用框架来开发
系列目录 前言: 有些园友经常问如何正确快速开发,但是我告诉你没有什么帮助文档比自己动手做更加实在,不用代码生成器 这一节专门抽了些时间来非常非常详细演示这个框架的数据流,废话不多说,现在开始!下面看 ...
- Encountered an unexpected error when attempting to resolve tag helper directive '@addTagHelper' with value '"*, Microsoft.AspNet.Mvc.TagHelpers"'
project.json 配置: { "version": "1.0.0-*", "compilationOptions": { " ...
- Linux驱动开发—— of_property_read_u8
在使用設備樹的時候, 有時會遇到下面的問題. 在設備樹中配置的屬性如下: fusb301,init-mode = <0x20>; 但是在驅動中讀出的卻是: rc = of_property ...
- 读书笔记--SQL必知必会21--使用游标
21.1 游标 结果集(result set),SQL查询说检出的结果. 游标(cusror),是一个存储在DBMS服务器上的数据库查询. 游标不是一条SELECT语句,而是被该句检索出来的结果集. ...
- css3 transition animation nick
时光转眼即逝,又到周六了,今天写点某部分人看不起的css玩玩! 转换 转换属性transform: 浏览器前缀: -webkit-transform;-o-transform;-moz-transfo ...
- python中的str,unicode和gb2312
实例1: v1=u '好神奇的问题!?' type(v1)->unicode v1.decode("utf-8")# not work,because v1 is unico ...