求一SQL語句

2022-10-02 02:16:50 字數 2263 閱讀 7670

1樓:匿名使用者

也不說什麼資料庫,語法都不一樣。

mysql

create table test

(fname varchar(100),

fmoney int);

insert into test values ('得獎-雙色球',4000);

insert into test values ('得獎-瓜子卡片',100);

insert into test values ('得獎-飲料頭獎',1000);

insert into test values ('打零工-碼農',8000);

insert into test values ('打零工-洗頭',4000);

insert into test values ('拾金',300);

執行:select

substr(

fname,

1,case

when instr(fname, '-') - 1 > 0 then

instr(fname, '-') - 1

else

length(fname)

end) fname,

sum(fmoney)

from

test

group by

substr(

fname,

1,case

when instr(fname, '-') - 1 > 0 then

instr(fname, '-') - 1

else

length(fname)

end);

oracle:

create table test

(fname varchar2(100),

fmoney int);

insert into test values ('得獎-雙色球',4000);

insert into test values ('得獎-瓜子卡片',100);

insert into test values ('得獎-飲料頭獎',1000);

insert into test values ('打零工-碼農',8000);

insert into test values ('打零工-洗頭',4000);

insert into test values ('拾金',300);

commit;

執行語句同mysql一樣,不贅述了。

sqlserver:

create table test

(fname varchar(100),

fmoney int);

insert into test values ('得獎-雙色球',4000);

insert into test values ('得獎-瓜子卡片',100);

insert into test values ('得獎-飲料頭獎',1000);

insert into test values ('打零工-碼農',8000);

insert into test values ('打零工-洗頭',4000);

insert into test values ('拾金',300);

執行:select

substring(

fname,

1,case

when charindex('-',fname) - 1 > 0 then

charindex('-',fname) - 1

else

len(fname)

end) fname,

sum(fmoney)

from

test

group by

substring(

fname,

1,case

when charindex('-',fname) - 1 > 0 then

charindex('-',fname) - 1

else

len(fname)

end);

所有結果如圖:

貌似你給的結果算錯了吧?

2樓:匿名使用者

使用substr函式能解決你的問題

select substr(fname,1,2),sum(fmoney) from f_name group by substr(fname,1,2);

3樓:匿名使用者

什麼意思? 是想把欄位名自定義嗎,取別名嗎

求SQL聯表查詢語句,求SQL聯表查詢語句

首先你要了解一下資料的傳輸 1 你不用擔心,20多萬資料很少的。我見過最高的單個表有近2億行資料。2 資料庫以sqlserver為例,它會把自己要用的資料快取到記憶體裡,然後再更新到硬碟,也就是說,你增刪改查的時候,實際上會先寫入到記憶體。所以sqlserver執行久了,你會發現工作管理員的記憶體佔...

sql語句求優化,聽說NOT IN語句不好求優化

還要注意是在哪一種資料庫管理系統中,有些就不支援minus,不過not exists應該都支援。select name from test1 a where not exists select from test2 b where b.name admin and b.name a.name sql...

求大神指點SQL語言,求大神指點SQL語句

select distinct vehiclenumber from table table換成你的表名 第四大題,四個sql語句,求大神指點 c 中如何用sql語言建立資料庫,把sql語句寫在哪?求大神指點 請大神指點,sql語句這是什麼意思?求詳細,感激不盡!select m.p.sysset,...