pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

如何將表格的前兩列堆疊成一列,但也僅將第三

How do I stack the first two columns of a table into a single column, but also pair third column with the first column only?(如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對?) - IT屋-程序員軟件開發(fā)技
本文介紹了如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

我問了一個很類似的問題 之前,但這次的要求有點復雜.我有一張如下所示的表格:

I asked a very similar question earlier, but the requirements this time are a bit more complex. I have a table that looks like the following:

| id | code_1 | code_2 | pair_1 |
|----|--------|--------|--------|
|  1 |     a1 |     a2 |     b1 |
|  2 |     a3 |     a4 | (null) |
|  3 |     a5 | (null) |     b2 |
|  4 |     a6 | (null) | (null) |
|  5 | (null) |     a7 |     b3 |
|  6 | (null) |     a8 | (null) |
|  7 | (null) | (null) |     b4 |
|  8 | (null) | (null) | (null) |

我想將 code_1 和 code_2 堆疊到一個列中,可以通過使用:

I want to stack code_1 and code_2 into a single column, which can be done by using:

select id, code, pair_1 as pair
  from source
       unpivot (code for code_ in (code_1, code_2)) as unpvt;

,產(chǎn)生以下輸出:

| id | code |   pair |
|----|------|--------|
|  1 |   a1 |     b1 |
|  1 |   a2 |     b1 |
|  2 |   a3 | (null) |
|  2 |   a4 | (null) |
|  3 |   a5 |     b2 |
|  4 |   a6 | (null) |
|  5 |   a7 |     b3 |
|  6 |   a8 | (null) |

,但我也想捕獲 code_1pair_1 配對的條件,即每當 code 來自 code_1,它將使用pair_1中的值作為pair;并且每當 code 來自 code_2 時,它總是將 null 用于 pair.

, but I also want to capture the condition that code_1 is paired with pair_1 i.e. whenever code is sourced from code_1, it will use the value in pair_1 for pair; and whenever code is sourced from code_2, it will always use null for pair.

例如,給定原始表,目標表應如下所示:

So for example, given the original table, here is what the target table should look like:

| id | code |   pair |
|----|------|--------|
|  1 |   a1 |     b1 |
|  2 |   a2 | (null) |
|  3 |   a3 | (null) |
|  4 |   a4 | (null) |
|  5 |   a5 |     b2 |
|  6 |   a6 | (null) |
|  7 |   a7 | (null) |
|  8 |   a8 | (null) |

DDL:

http://sqlfiddle.com/#!18/743a5/16

create table source (
  id     int identity(1, 1) primary key,
  code_1 varchar(10),
  code_2 varchar(10),
  pair_1 varchar(10)
);
insert into source values
('a1', 'a2', 'b1'),
('a3', 'a4', null),
('a5', null, 'b2'),
('a6', null, null),
(null, 'a7', 'b3'),
(null, 'a8', null),
(null, null, 'b4'),
(null, null, null);


create table target (
  id   int identity(1, 1) primary key,
  code varchar(10),
  pair varchar(10)
);
insert into target values
('a1', 'b1'),
('a2', null),
('a3', null),
('a4', null),
('a5', 'b2'),
('a6', null),
('a7', null),
('a8', null);

推薦答案

你不能做簡單的UNION ALL嗎?

試試下面的查詢

SELECT * FROM
(
SELECT id, code_1 as code, pair_1 as pair FROM source WHERE code_1 IS NOT NULL
UNION ALL 
SELECT id, code_2 as code, NULL as pair FROM source WHERE code_2 IS NOT NULL
) UnionTable
ORDER BY id

這篇關于如何將表格的前兩列堆疊成一列,但也僅將第三列與第一列配對?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

【網(wǎng)站聲明】本站部分內(nèi)容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內(nèi)容侵犯了您的權益,請聯(lián)系我們刪除處理,感謝您的支持!

相關文檔推薦

Converting Every Child Tags in to a Single Column with multiple Delimiters -SQL Server (3)(將每個子標記轉換為具有多個分隔符的單列-SQL Server (3))
How can I create a view from more than one table?(如何從多個表創(chuàng)建視圖?)
Create calculated value based on calculated value inside previous row(根據(jù)前一行內(nèi)的計算值創(chuàng)建計算值)
Recursive t-sql query(遞歸 t-sql 查詢)
Convert Month Name to Date / Month Number (Combinations of Questions amp; Answers)(將月份名稱轉換為日期/月份編號(問題和答案的組合))
Join instead of correlated subquery(加入而不是相關子查詢)
主站蜘蛛池模板: 磷酸肌酸二钠盐,肌酐磷酰氯-沾化欣瑞康生物科技 | 广东高华家具-公寓床|学生宿舍双层铁床厂家【质保十年】 | 上海噪音治理公司-专业隔音降噪公司-中广通环保 | 煤棒机_增碳剂颗粒机_活性炭颗粒机_木炭粉成型机-巩义市老城振华机械厂 | 伶俐嫂培训学校_月嫂培训班在哪里报名学费是多少_月嫂免费政府培训中心推荐 | 整合营销推广|营销网络推广公司|石家庄网站优化推广公司|智营销 好物生环保网、环保论坛 - 环保人的学习交流平台 | 证券新闻,热播美式保罗1984第二部_腾讯1080p-仁爱影院 | 莱州网络公司|莱州网站建设|莱州网站优化|莱州阿里巴巴-莱州唯佳网络科技有限公司 | 变位机,焊接变位机,焊接变位器,小型变位机,小型焊接变位机-济南上弘机电设备有限公司 | 超声波破碎仪-均质乳化机(供应杭州,上海,北京,广州,深圳,成都等地)-上海沪析实业有限公司 | 量子管通环-自清洗过滤器-全自动反冲洗过滤器-沼河浸过滤器 | 环讯传媒,永康网络公司,永康网站建设,永康小程序开发制作,永康网站制作,武义网页设计,金华地区网站SEO优化推广 - 永康市环讯电子商务有限公司 | 英国公司注册-新加坡公司注册-香港公司开户-离岸公司账户-杭州商标注册-杭州优创企业 | 不锈钢螺丝 - 六角螺丝厂家 - 不锈钢紧固件 - 万千紧固件--紧固件一站式采购 | 北京模型公司-工业模型-地产模型-施工模型-北京渝峰时代沙盘模型制作公司 | 专业生物有机肥造粒机,粉状有机肥生产线,槽式翻堆机厂家-郑州华之强重工科技有限公司 | 篮球架_乒乓球台_足球门_校园_竞技体育器材_厂家_价格-沧州浩然体育器材有限公司 | 单柱拉力机-橡胶冲片机-哑铃裁刀-江都轩宇试验机械厂 | 超声波成孔成槽质量检测仪-压浆机-桥梁预应力智能张拉设备-上海硕冠检测设备有限公司 | 喷涂流水线,涂装流水线,喷漆流水线-山东天意设备科技有限公司 | 网优资讯-为循环资源、大宗商品、工业服务提供资讯与行情分析的数据服务平台 | 消泡剂-水处理消泡剂-涂料消泡剂-切削液消泡剂价格-东莞德丰消泡剂厂家 | 真空吸污车_高压清洗车厂家-程力专用汽车股份有限公司官网 | 接地电阻测试仪[厂家直销]_电缆故障测试仪[精准定位]_耐压测试仪-武汉南电至诚电力设备 | 欧景装饰设计工程有限公司-无锡欧景装饰官网 | 一体化污水处理设备_生活污水处理设备_全自动加药装置厂家-明基环保 | pH污水传感器电极,溶解氧电极传感器-上海科蓝仪表科技有限公司 | RFID电子标签厂家-上海尼太普电子有限公司 | 重庆钣金加工厂家首页-专业定做监控电视墙_操作台 | 紫外线老化试验箱_uv紫外线老化试验箱价格|型号|厂家-正航仪器设备 | 家庭教育吧-在线家庭教育平台,专注青少年家庭教育 | 上海冠顶工业设备有限公司-隧道炉,烘箱,UV固化机,涂装设备,高温炉,工业机器人生产厂家 | 硅PU球场、篮球场地面施工「水性、环保、弹性」硅PU材料生产厂家-广东中星体育公司 | 苏商学院官网 - 江苏地区唯一一家企业家自办的前瞻型、实操型商学院 | 北京开业庆典策划-年会活动策划公司-舞龙舞狮团大鼓表演-北京盛乾龙狮鼓乐礼仪庆典策划公司 | 陕西自考报名_陕西自学考试网| 山楂片_雪花_迷你山楂片_山楂条饼厂家-青州市丰源食品厂 | 志高装潢官网-苏州老房旧房装修改造-二手房装修翻新 | 定做大型恒温循环水浴槽-工业用不锈钢恒温水箱-大容量低温恒温水槽-常州精达仪器 | 行星齿轮减速机,减速机厂家,山东减速机-淄博兴江机械制造 | 电子海图系统-电梯检验系统-智慧供热系统开发-商品房预售资金监管系统 |