這個SQL語句怎麼寫好呢

2022-12-28 05:29:11 字數 1376 閱讀 4903

1樓:匿名使用者

select 貨品, 批次, 貨位, sum(噸位) as 噸位from

((select 貨品, 批次, 進出港類別, 貨位, 0 - 噸位 as 噸位

from a

where (進出港類別 = '出港')

)union

(select 貨品, 批次, 進出港類別, 貨位, 0 - 噸位 as 噸位

from a

where (進出港類別 = '轉港')

)union

(select 貨品, 批次, 進出港類別, 貨位, 噸位from a

where (進出港類別 = '進港')

)union

(select 貨品, 批次, 進出港類別, 目標貨位 as 貨位, 噸位

from a

where (進出港類別 = '轉港')

)) as m

group by 貨品, 批次, 貨位

2樓:閆國上

select 貨品,批次,貨位,噸位

insert into b

from a

從其他表中取資料可以把欄位寫成"表.欄位"。

提醒你記得以後吧這種問題放到資料庫的位置,方便網友給你回答哦!

3樓:

不知道是不是這樣:

select 貨品,批次,貨位,噸位 from a order by 貨品,批次

我想應該沒有這麼簡單吧.如果不是請你把問題補充清楚.

4樓:匿名使用者

select * from(

select 貨品,批次,貨位,convert(varchar(50),sum(case when 進出港類別='進港' then convert(int,replace(噸位,'噸','')) when 進出港類別 in('出港','轉港') then -1*convert(int,replace(噸位,'噸','')) end))+'噸' as 噸位 from a group by 貨品,批次,貨位

union all

select 貨品,批次,目標貨位 as 貨位,convert(varchar(50),sum(case when 進出港類別='轉港' then convert(int,replace(噸位,'噸','')) end))+'噸' as 噸位 from a where 目標貨位<>'' group by 貨品,批次,目標貨位

)tmp order by 批次,貨位

5樓:匿名使用者

呵呵,感覺這個需求需要使用定製,

需要將這些限制條件以及分類條件進行歸納一下,然後按照這個去寫sql語句就簡單多了,

呵呵,希望能有幫助,^_^

SQL請高手解讀這個SQL語句 謝謝

這是一種不太規範的sql寫法標準,left函式不是通用sql語句,一般來說在通用標準中,left score,1 10應該寫成 substring score,1,1 10,如果你學過別的資料庫這個語句應該能夠看懂 其實就是從左邊擷取第一位,然後乘以10 當然,如果是嚴謹的寫法,應該先將擷取出來的字...

sql語句該怎麼寫,SQL語句該怎麼寫

不知道理解的對不對,有問題再問我吧 create table button button id varchar 10 gocreate table user user id varchar 10 gocreate table user button user id varchar 10 button...

c模糊查詢sql語句怎麼寫c裡SQL模糊查詢

假設有表名稱 tb student 欄位 id,編號 name 學生姓名 性別 要求 根據文字框 txt inputname 輸入的值,進行學生名稱的模糊查詢。偽 獲取文字框的值作為查詢條件 string filtername txt inputname.text.trim 查詢語句 string ...