欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

oracle+如何合并行,sql多行合并成一行 oracle

{ORACLE}請(qǐng)教大家怎么把多行合并成一行??

這樣嗎?

創(chuàng)新互聯(lián)主要從事網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)固陽,十年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220

select?t1.push_code,t.1provincepudate,p1.provincereceivername,t2.citypudate,t2.cityreceivername

from?t1,t2

where?t.push_code=?t2.push_code

在Oracle中,如何將多行數(shù)據(jù)合并成一行數(shù)據(jù),如下:

如果這兩行有個(gè)共同的其他列作為分組,標(biāo)志他們是同一組、比如姓名編號(hào)之類的,是可以group by后min出來的。

select 姓名,min(引流管) as 引流管,min(化療) as 化療, min(放療) as 放療

from 記錄表

group by 姓名

;

oracle中多行合并,如何用sql實(shí)現(xiàn)?

SQL select * from vb;

ID NM1 NM2

---------- ------------------------------ ------------------------------

1 a ccb

1 df dgdf

1 ewr saldfj

SQL select id,replace(name,',',' ') name from (select id,wm_concat(name) name from (select id,nm1||' '||nm2 name from vb) group by id);

ID NAME

---------- ------------------------------

1 a ccb ewr saldfj df dgdf

oracle 單列多行合并。

根據(jù)你的描述,做的以下測(cè)試:

-- 建表

CREATE TABLE kongxianji (a varchar2(20),b varchar2(20));

-- 插入數(shù)據(jù)

INSERT INTO kongxianji(a,b)VALUES('a',1);

INSERT INTO kongxianji(a,b)VALUES('b',2);

INSERT INTO kongxianji(a,b)VALUES('c',3);

INSERT INTO kongxianji(a,b)VALUES('d',4);

INSERT INTO kongxianji(a,b)VALUES('e',5);

INSERT INTO kongxianji(a,b)VALUES('f',6);

INSERT INTO kongxianji(a,b)VALUES('g',7);

COMMIT;

-- 寫語句塊,并執(zhí)行

DECLARE

v_a varchar2(20);

v_b varchar2(50);

CURSOR r_aa IS SELECT a.a FROM kongxianji a WHERE a.b IN (2,3,6,7);

BEGIN

OPEN r_aa;

LOOP

FETCH r_aa INTO v_a;

EXIT WHEN r_aa%NOTFOUND;

v_b:= v_b||v_a;

END LOOP;

CLOSE r_aa;

dbms_output.put_line(v_b);

END;

說明:只通過一條sql語句是無法得到最終結(jié)果的,必須通過循環(huán)得到。

oracle 兩行數(shù)據(jù)合并為一行數(shù)據(jù)

合并可以做到,不過如果不是單一的一條記錄,那不就變成笛卡爾積了?

比如有兩行不同姓名的行,再有兩行不同姓名1的行。

那么你得到的結(jié)果就是4行(也就是笛卡爾積),而且內(nèi)容全不完全都不同,這個(gè)結(jié)果應(yīng)該不是你要的吧。

比如前面的兩行內(nèi)容為a a a;b b b(一個(gè)字母表示一個(gè)字段,這是兩行內(nèi)容)

后面兩行的內(nèi)容為c c c;d d d(一個(gè)字母表示一個(gè)字段,這是兩行內(nèi)容)

那么你得到的結(jié)果就是 a a a c c c;a a a d d d;b b b c c c;b b b d d d

這個(gè)四行的結(jié)果是你要的么?

求助,oracle多行數(shù)據(jù)合并成一行

我現(xiàn)在身邊沒有 數(shù)據(jù)庫環(huán)境 這個(gè)是我以前寫的SQL

你看一下,修改一下就可以了

Oracle分組查詢用逗號(hào)分隔結(jié)果SQL語句

表一:

學(xué)號(hào) 姓名

1 張三

2 李四

3 王五

。。。。

表二:

學(xué)號(hào) 選修課程

1 語文

1 數(shù)學(xué)

2 英語

2 語文

3 數(shù)學(xué)

3 英語

3 歷史

。。。。。

要求查處結(jié)果

學(xué)好 姓名 選修課程所有課程名稱以,隔開

1 張三 語文,數(shù)學(xué)

2 李四 英語,語文

3 王五 數(shù)學(xué),英語,歷史

;

create table a_lyh_test

as

select 1 as "學(xué)號(hào)" , '張三' as "姓名" from dual

union all

select 2 as "學(xué)號(hào)" , '李四' as "姓名" from dual

union all

select 3 as "學(xué)號(hào)" , '王五' as "姓名" from dual

;

create table b_lyh_test

as

select 1 as "學(xué)號(hào)" , '語文' as "選修課程" from dual

union all

select 1 as "學(xué)號(hào)" , '數(shù)學(xué)' as "選修課程" from dual

union all

select 2 as "學(xué)號(hào)" , '英語' as "選修課程" from dual

union all

select 2 as "學(xué)號(hào)" , '語文' as "選修課程" from dual

union all

select 3 as "學(xué)號(hào)" , '數(shù)學(xué)' as "選修課程" from dual

union all

select 3 as "學(xué)號(hào)" , '英語' as "選修課程" from dual

union all

select 3 as "學(xué)號(hào)" , '歷史' as "選修課程" from dual

;

select f."學(xué)號(hào)"

,f."姓名"

,ltrim(max(sys_connect_by_path(f."選修課程",','))

keep (dense_rank last order by f.pnum),',') as "選修課程"

from

(

select t."學(xué)號(hào)"

,t."姓名"

,t."選修課程"

,row_number() over(partition by t."學(xué)號(hào)" order by t."姓名") as pnum

,row_number() over(partition by t."學(xué)號(hào)" order by t."姓名")-1 as lnum

from

(

select a."學(xué)號(hào)",a."姓名",b."選修課程"

from a_lyh_test a

,b_lyh_test b

where a."學(xué)號(hào)" = b."學(xué)號(hào)"

) t

) f

group by f."學(xué)號(hào)",f."姓名"

connect by f.lnum = prior f.pnum and f."學(xué)號(hào)" = prior f."學(xué)號(hào)"

start with f.pnum = 1;

當(dāng)前文章:oracle+如何合并行,sql多行合并成一行 oracle
當(dāng)前鏈接:http://chinadenli.net/article13/dsigcgs.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT網(wǎng)站收錄響應(yīng)式網(wǎng)站網(wǎng)頁設(shè)計(jì)公司虛擬主機(jī)網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

商城網(wǎng)站建設(shè)