sql中類似迴圈方法語句怎麼寫?急!急

2022-03-08 17:50:59 字數 4267 閱讀 1910

1樓:匿名使用者

create table a_lyh_test

as select  'a' as "欄位1" , 500 as "欄位2" from dual

union all

select  'b' as "欄位1" , 300 as "欄位2" from dual

union all

select  'b' as "欄位1" ,400 as "欄位2" from dual

union all

select  'b' as "欄位1" , 600 as "欄位2" from dual

union all

select  'a' as "欄位1" , 200 as "欄位2" from dual

;select f.欄位1

,ltrim(max(sys_connect_by_path(f.欄位2,','))

keep (dense_rank last order by f.pnum),',') as 欄位2

from

(select t.欄位1

,t.欄位2

,row_number() over(partition by t.欄位1  order by t.欄位1) as pnum

,row_number() over(partition by t.欄位1  order by t.欄位1)-1 as lnum

from

(select a.欄位1,a.欄位2

from a_lyh_test   a

) t) fgroup by f.欄位1

connect by f.lnum = prior f.pnum and f.欄位1 = prior f.欄位1

start with f.pnum = 1;

2樓:康熙轉世

樓主您好

mysql有group_concat,oracle有wm_concat這樣的函式

否則需要自己寫,以mysql為例

select column1,group_concat(column2) from a where column1='b' group by column1

3樓:匿名使用者

vcharr :='';

i :=0;

for c in (select 欄位2 from table_name where 欄位1=b order by 欄位2 asc)

loop

if i=0 then

vcharr:=c.欄位2

else

vcharr :=vcharr||','||c.欄位2end if;

i:=i+1;

end loop;

4樓:匿名使用者

不知道有沒有直接的方法 但是你可以自己寫一個函式

sql寫語句如何迴圈執行10000次 255

5樓:匿名使用者

呼叫迴圈執行,例如:

declare @n int

set @n=0

begin

while @n<10000

set @n=@n + 1

-- 這裡執行您要執行的1萬次操作

-- 例如您提問中的那些動作查詢end

6樓:匿名使用者

這個問題涉及到sql語句的迴圈執行語句的用法。sql語句中的迴圈和其他程式語言的原理是類似的,只不過寫法上有點區別。

1.定義迴圈時需要用到的變數並賦值:

declare @i int

set @uid=1

2.sql語句的迴圈是需要巢狀在begin,end語句之內的:

begin

#需要執行的語句。

end3.while語句的語法如下(需要注意,每次迴圈完成要給變數加1):

while @uid<=10000

select * from test where id=10set @uid=@uid+1

4.完整語句示例如下:

declare @i int

set @uid=1

begin

while @uid<=10000

select * from test where id=10set @uid=@uid+1end

這個sql語句應該怎麼寫?(不用迴圈的方法)

7樓:

將表拆開成每個別五萬條資料左右,是最好的辦法了呵呵。

8樓:

可以查出存在對應關係的列比如

你有一個表 a

col1 col2

2134 aaa

4356 bbbb

select * from ft a

where exists

(select * from ft where charindex(a.df,'3682717132,3409045755,992100662,3682712649,992100885,992586225,3658448953,3682870790,992582320,992100613,992101501,3682712649,992101529,977203053,3682864893,992100465') > 0)

9樓:匿名使用者

a="123,323,...,567"

select [字母] from [表] where [數字] in (a)

10樓:來自南屏古村精緻的懶羊羊

你的數字本來就沒有順序.怎麼能按順序讀出來??

如何寫sql迴圈插入語句

11樓:sql的藝術

思路:1、首先產生一個當月的每日的一個結果集,然後去掉不上班的那些天

2、再隨機生成每人每日的上班時間和下班時間

3、然後再生成全部人的考勤記錄就ok

12樓:匿名使用者

declare @i int

set @i =0

while @i<100

begin

insert into #t_zqdm select @iset @i = @i+ 1end

sql語句中怎樣迴圈插入規律資料啊??

13樓:光舟湖畔

可以使用迴圈語句

declare @i int

set @i=1

while @i<30

begin

insert into test (userid) values(@i)

set @i=@i+1

end---------------

while 條件

begin

執行操作

set @i=@i+1

endwhile

設定重複執行 sql 語句或語句塊的條件。只要指定的條件為真,就重複執行語句。可以使用 break 和 continue 關鍵字在迴圈內部控制 while 迴圈中語句的執行。

如何用sql語句迴圈執行語句

14樓:頂立江湖

sql語句無法實現迴圈,只能通過程式或者儲存過程來實現。

如果只是一次性工作,則建議直接用excel的公式手批量生成sql語句 然後一次性貼到mysql的命令列工具中執行即可。

s1 : 建立一個模板表 create table t (id int, col1 int , col2 varchar(10));

s2 : excel中在a1輸入

s3: 下拉填充這個a1至a1000

create table t1 like t;

create table t2 like t;

create table t3 like t;

create table t4 like t;

create table t5 like t;

create table t6 like t;

create table t7 like t;

create table t8 like t;

create table t9 like t;

create table t10 like t;

s4: 複製到mysql命令列工具一次行執行。

這個sql語句怎麼寫,這個sql語句該怎麼寫

declare sql nvarchar max sum 0 select sql sql a.name from syscolumns a inner join sysobjects bon a.id b.id where b.xtype u and b.name tablename and a....

mubatis中sql語句怎麼新增

在抄service中把引數放到hashmap中listlist new arraylist list.add x list.add y list.add z string s a date d new date hashmapparam new hashmap param.put list list...

vf中,請問有本地檢視可以寫SQL語句嗎

點選那個sql看看,或者右鍵sql 不行就用 create sql view 命令建立檢視 開啟資料庫,用命令來建立檢視 open database 資料庫名 create sql view 視 件名 as sql select 語句 例 open database sj creat sql vie...