『壹』 日期前一天的sql語句
create table AAA(a varchar(2),b numeric(18,0),c datetime)
insert into AAA(a,b,c) values('A',10,'2009-01-01')
insert into AAA(a,b,c) values('A',11,'2009-01-02')
insert into AAA(a,b,c) values('A',12,'2009-01-03')
insert into AAA(a,b,c) values('B',23,'2009-01-01')
insert into AAA(a,b,c) values('B',24,'2009-01-02')
insert into AAA(a,b,c) values('B',25,'2009-01-03')
insert into AAA(a,b,c) values('C',17,'2009-01-01')
insert into AAA(a,b,c) values('C',19,'2009-01-02')
insert into AAA(a,b,c) values('C',25,'2009-01-03')
select a,convert(varchar,sum(b))+'/'+convert(varchar,sum(b1)) bb1 from (
select t.a,t.b,0 b1 from AAA t inner join
--最大日期
(select a,max(c) c from aaa group by a ) t1 on
t.a=t1.a and t.c=t1.c
union all
select t.a,0,t.b from AAA t inner join(
--第二大日期
select t1.a,max(t1.c) c from AAA t1 inner join
(select a,max(c) c from AAA
group by a) t2 on t1.a = t2.a and t1.c<>t2.c
group by t1.a) t3 on t.a=t3.a and t.c=t3.c
) t4
group by a
『貳』 SQL條件分類匯總
只會點SQL 語句,寫下來看看!代碼如下:
1:
select 用戶號,sum(收入) as 家庭收入,社區名 from shequbiao
group by 用戶號,社區名
2:
先創建一個帶參數的存儲過程:
create procere 存儲過程名
@id char(4)
as
update shequbiao set 社區名=(select 社區名 from shequbiao where 用戶類型='戶主'and 用戶號=@id )
where 用戶號=@id
然後執行:
exec 存儲過程名 參數
3:
select 用戶號 , sum(收入) as 家庭總收入,count(*)as 家庭總人數 ,用戶名=(select 用戶名 from shequbiao aa where 用戶類型='戶主'and aa.用戶號=bb.用戶號)
from shequbiao bb
group by 用戶號
order by sum(收入) desc
『叄』 SQL 資料庫算數運算
select * from (
select 名稱, 要求到貨, 實際到貨, '' as 到貨比率
from 表
union all
select 名稱, sum(要求到貨), sum(實際到貨), cast(cast(sum(要求到貨) as decimal(2))/sum(實際到貨)*100 as varchar(20))+'%'
from 表
group by 名稱) t order by 名稱, 要求到貨
使用UNION ALL,先構建一個明細,然後再構建一個計算比率的,但是因為UNION ALL要求兩個的格式一樣,所以明細的構建需要多一個比率的列,才能顯示一致。然後按照名稱排序,同名稱的按照數量從小到大,這樣合計肯定就是每個名稱後最後一個。
『肆』 sql多表修改語句
比如:
表A: 張三, 100
表B: 張三, 25
修改表B 的值
結果:
表B: 張三, 125
這個樣子么?
UPDATE
B
SET
B.jifen = B.jifen + A.addjifen
FROM
B JOIN A
ON (B.user = A.user);
『伍』 請教:西門子 SQL321 蝶閥電動執行機構怎麼接線,我放了一根5芯線1根2芯線
說的很明白了好不哇,1接零線,2接加熱器火線,3接閥門開,4接閥門關,5和6不用接,7、8、9需要的時候才接,是指閥門開度,10K的變阻器,可以接10V的,需要0-10V的模擬量輸出的話,7接0V負,8接模擬輸出端,9接10V+,A和B是無源全開反饋,C和D是無源全關反饋,看你需要些接什麼,最簡單的就是接1、3、4就OK,看設計怎麼設計的
『陸』 怎麼用sql把四個表格中名字一樣的合並求和不一樣的不處理
我是先寫了一個視圖,把兩個表進行組合,然後去讀取視圖的,我寫了兩個表的
建立視圖:
CREATE VIEW [dbo].[View_1]
AS
SELECT l, n
FROM dbo.sq_b1
UNION ALL
SELECT l, n
FROM dbo.sq_b2
然後讀取視圖:
SELECT l,SUM(n) as n FROM dbo.View_1 GROUP BY l
其中l為欄位名字元類型,n為值是int類型
四個表也一樣
『柒』 sql中,取時間最近的一條記錄
selecttest.sub_dh,test.date,test.Gname
fromtest,(SELECTSub_dhasdh,MAX(Date)asdateFROMdbo.testGROUPBYSUB_DH)a
wheretest.Sub_dh=a.dh
andtest.date=a.date
看你寫的SQL,GROUPBY的用法還是沒有太理解
『捌』 sql題 求解
假設你的表是tablelist
SQL語句是:select name from tablelist where count>'25'
另附SQL語句用法:
一、簡單查詢
簡單的Transact-SQL查詢只包括選擇列表、FROM子句和WHERE子句。
它們分別說明所查詢列、查詢的
表或視圖、以及搜索條件等。
例如,下面的語句查詢testtable表中姓名為「張三」的nickname欄位和email欄位。
SELECT nickname,email
FROM testtable WHERE name='張三'
(一)選擇列表
選擇列表(select_list)指出所查詢列,它可以是一組列名列表、星號、表達式、變數(包括局部變 量和全局變數)等構成。
1、選擇所有列 例如,下面語句顯示testtable表中所有列的數據: SELECT * FROM testtable
2、選擇部分列並指定它們的顯示次序 查詢結果集合中數據的排列順序與選擇列表中所指定的列名排列順序相同。
例如: SELECT nickname,email FROM testtable
3、更改列標題 在選擇列表中,可重新指定列標題。定義格式為: 列標題=列名 列名 列標題 如果指定的列標題不是標準的標識符格式時,應使用引號定界符。
例如,下列語句使用漢字顯示列 標題: SELECT 昵稱=nickname,電子郵件=email FROM testtable
4、刪除重復行 SELECT語句中使用ALL或DISTINCT選項來顯示表中符合條件的所有行或刪除其中重復的數據行,默認 為ALL。使用DISTINCT選項時,對於所有重復的數據行在SELECT返回的結果集合中只保留一行。
5、限制返回的行數 使用TOP n [PERCENT]選項限制返回的數據行數,TOP n說明返回n行,而TOP n PERCENT時,說明n是 表示一百分數,指定返回的行數等於總行數的百分之幾。
例如: SELECT TOP 2 * FROM testtable SELECT TOP 20 PERCENT * FROM testtable
(二)FROM子句
FROM子句指定SELECT語句查詢及與查詢相關的表或視圖。在FROM子句中最多可指定256個表或視圖, 它們之間用逗號分隔。 在FROM子句同時指定多個表或視圖時,如果選擇列表中存在同名列,這時應使用對象名限定這些列 所屬的表或視圖。
例如在usertable和citytable表中同時存在cityid列,在查詢兩個表中的cityid時應使用下面語句格式加以限定:
SELECT username,citytable.cityid
FROM usertable,citytable
WHERE usertable.cityid=citytable.cityid
在FROM子句中可用以下兩種格式為表或視圖指定別名: 表名 as 別名 表名 別名
例如上面語句可用表的別名格式表示為:
SELECT username,b.cityid
FROM usertable a,citytable b
WHERE a.cityid=b.cityid
SELECT不僅能從表或視圖中檢索數據,它還能夠從其它查詢語句所返回的結果集合中查詢數據。
例如:
SELECT a.au_fname+a.au_lname
FROM authors a,titleauthor ta (SELECT title_id,title FROM titles WHERE ytd_sales>10000 ) AS t
WHERE a.au_id=ta.au_id AND ta.title_id=t.title_id
此例中,將SELECT返回的結果集合給予一別名t,然後再從中檢索數據。
(三)使用WHERE子句設置查詢條件
WHERE子句設置查詢條件,過濾掉不需要的數據行。
例如下面語句查詢年齡大於20的數據:
SELECT *
FROM usertable
WHERE age>20
WHERE子句可包括各種條件運算符:
比較運算符(大小比較):>、>=、=、<、<=、<>、!>、!<
范圍運算符(表達式值是否在指定的范圍):BETWEEN…AND… NOT BETWEEN…AND…
列表運算符(判斷表達式是否為列表中的指定項):IN (項1,項2……) NOT IN (項1,項2……)
模式匹配符(判斷值是否與指定的字元通配格式相符):LIKE、NOT LIKE
空值判斷符(判斷表達式是否為空):IS NULL、NOT IS NULL
邏輯運算符(用於多條件的邏輯連接):NOT、AND、OR
1、范圍運算符例:age BETWEEN 10 AND 30相當於age>=10 AND age<=30
2、列表運算符例:country IN ('Germany','China')
3、模式匹配符例:常用於模糊查找,它判斷列值是否與指定的字元串格式相匹配。
可用於char、 varchar、text、ntext、datetime和smalldatetime等類型查詢。
可使用以下通配字元: 百分號%:可匹配任意類型和長度的字元,如果是中文,請使用兩個百分號即%%。 下劃線_:匹配單個任意字元,它常用來限製表達式的字元長度。 方括弧[]:指定一個字元、字元串或范圍,要求所匹配對象為它們中的任一個。 [^]:其取值也[] 相同,但它要求所匹配對象為指定字元以外的任一個字元。
例如: 限制以Publishing結尾,使用LIKE '%Publishing' 限制以A開頭:LIKE '[A]%' 限制以A開頭外:LIKE '[^A]%' 4、空值判斷符例WHERE age IS NULL 5、邏輯運算符:優先順序為NOT、AND、OR
(四)查詢結果排序
使用ORDER BY子句對查詢返回的結果按一列或多列排序。
ORDER BY子句的語法格式為: ORDER BY {column_name [ASC|DESC]} [,…n]
其中ASC表示升序,為默認值,DESC為降序。
ORDER BY不能按ntext、text和image數據類型進行排序。
例如: SELECT * FROM usertable ORDER BY age desc,userid ASC 另外,可以根據表達式進行排序。
二、聯合查詢
UNION運算符可以將兩個或兩個以上上SELECT語句的查詢結果集合合並成一個結果集合顯示,即執行聯 合查詢。UNION的語法格式為: select_statement UNION [ALL] selectstatement [UNION [ALL] selectstatement][…n]
其中selectstatement為待聯合的SELECT查詢語句。 ALL選項表示將所有行合並到結果集合中。不指定該項時,被聯合查詢結果集合中的重復行將只保留一行。
聯合查詢時,查詢結果的列標題為第一個查詢語句的列標題。因此,要定義列標題必須在第一個查詢語句中定義。要對聯合查詢結果排序時,也必須使用第一查詢語句中的列名、列標題或者列序號。
在使用UNION 運算符時,應保證每個聯合查詢語句的選擇列表中有相同數量的表達式,並且每個查詢選 擇表達式應具有相同的數據類型,或是可以自動將它們轉換為相同的數據類型。在自動轉換時,對於數值類 型,系統將低精度的數據類型轉換為高精度的數據類型。 在包括多個查詢的UNION語句中,其執行順序是自左至右,使用括弧可以改變這一執行順序。
例如: 查詢1 UNION (查詢2 UNION 查詢3)
三、連接查詢
通過連接運算符可以實現多個表查詢。連接是關系資料庫模型的主要特點,也是它區別於其它類型 資料庫管理系統的一個標志。
在關系資料庫管理系統中,表建立時各數據之間的關系不必確定,常把一個實體的所有信息存放在 一個表中。當檢索數據時,通過連接操作查詢出存放在多個表中的不同實體的信息。連接操作給用戶帶 來很大的靈活性,他們可以在任何時候增加新的數據類型。為不同實體創建新的表,爾後通過連接進行查詢。
連接可以在SELECT 語句的FROM子句或WHERE子句中建立,似是而非在FROM子句中指出連接時有助於 將連接操作與WHERE子句中的搜索條件區分開來。所以,在Transact-SQL中推薦使用這種方法。
SQL-92標准所定義的FROM子句的連接語法格式為:
FROM join_table join_type join_table
[ON (join_condition)]
其中join_table指出參與連接操作的表名,連接可以對同一個表操作,也可以對多表操作,對同一 個表操作的連接又稱做自連接。
join_type 指出連接類型,可分為三種:內連接、外連接和交叉連接。內連接(INNER JOIN)使用比 較運算符進行表間某(些)列數據的比較操作,並列出這些表中與連接條件相匹配的數據行。根據所使用 的比較方式不同,內連接又分為等值連接、自然連接和不等連接三種。
外連接分為左外連接(LEFT OUTER JOIN或LEFT JOIN)、右外連接(RIGHT OUTER JOIN或RIGHT JOIN) 和全外連接(FULL OUTER JOIN或FULL JOIN)三種。與內連接不同的是,外連接不只列出與連接條件相匹 配的行,而是列出左表(左外連接時)、右表(右外連接時)或兩個表(全外連接時)中所有符合搜索條件的數據行。
交叉連接(CROSS JOIN)沒有WHERE 子句,它返回連接表中所有數據行的笛卡爾積,其結果集合中的 數據行數等於第一個表中符合查詢條件的數據行數乘以第二個表中符合查詢條件的數據行數。
連接操作中的ON (join_condition) 子句指出連接條件,它由被連接表中的列和比較運算符、邏輯 運算符等構成。
無論哪種連接都不能對text、ntext和image數據類型列進行直接連接,但可以對這三種列進行間接 連接。
例如:
SELECT p1.pub_id,p2.pub_id,p1.pr_info
FROM pub_info AS p1 INNER JOIN pub_info AS p2
ON DATALENGTH(p1.pr_info)=DATALENGTH(p2.pr_info)
(一) 內連接 內連接查詢操作列出與連接條件匹配的數據行,它使用比較運算符比較被連接列的列值。
內連接分 三種:
1、等值連接:在連接條件中使用等於號(=)運算符比較被連接列的列值,其查詢結果中列出被連接 表中的所有列,包括其中的重復列。
2、不等連接: 在連接條件使用除等於運算符以外的其它比較運算符比較被連接的列的列值。
這些 運算符包括>、>=、<=、<、!>、!<和<>。
3、自然連接:在連接條件中使用等於(=)運算符比較被連接列的列值,但它使用選擇列表指出查詢 結果集合中所包括的列,並刪除連接表中的重復列。
例,下面使用等值連接列出authors和publishers表中位於同一城市的作者和出版社:
SELECT * FROM authors AS a INNER JOIN publishers AS p
ON a.city=p.city
又如使用自然連接,在選擇列表中刪除authors 和publishers 表中重復列(city和state):
SELECT a.*,p.pub_id,p.pub_name,p.country
FROM authors AS a INNER JOIN publishers AS p
ON a.city=p.city
(二) 外連接 內連接時,返回查詢結果集合中的僅是符合查詢條件( WHERE 搜索條件或 HAVING 條件)和連接條件 的行。而採用外連接時,它返回到查詢結果集合中的不僅包含符合連接條件的行,而且還包括左表(左外 連接時)、右表(右外連接時)或兩個邊接表(全外連接)中的所有數據行。
如下面使用左外連接將論壇內容和作者信息連接起來:
SELECT a.*,b.* FROM luntan LEFT JOIN usertable as b
ON a.username=b.username
下面使用全外連接將city表中的所有作者以及user表中的所有作者,以及他們所在的城市:
SELECT a.*,b.* FROM city as a FULL OUTER JOIN user as b
ON a.username=b.username
(三) 交叉連接 交叉連接不帶WHERE 子句,它返回被連接的兩個表所有數據行的笛卡爾積,返回到結果集合中的數據行數等於第一個表中符合查詢條件的數據行數乘以第二個表中符合查詢條件的數據行數。
例,titles表中有6類圖書,而publishers表中有8家出版社,則下列交叉連接檢索到的記錄數將等 於6*8=48行。
SELECT type,pub_name FROM titles CROSS JOIN publishers
ORDER BY type
『玖』 西門子電動蝶閥的VKF42系列蝶閥
主要特點
◆可用於閉式/開式水系統
◆全系列蝶閥口徑DN50… DN600
◆閥體承壓達16 bar
西門子蝶閥執行器主要特點
◆25Nm .. 2650Nm 角行程電動執行器
◆可實現開關量和調節量 (0…10V) 控制
◆7Bar關斷壓差(△Ps)
◆開關型和調節型可選配開到位、關到位輔助限位開關輸出。
開關型可以配置0-1000Ω電位計反饋 -可實現開關量和模擬量調節
-EPDM密封,符合ISO 7005的 PN6、PN10、PN16的法蘭間連接
-用於閉環系統或開環系統中,介質可為冷凍水、低溫熱水、生活熱水、冷水或淡水的控制 角 行 程90度
額定壓力 PN 16 符合 EN1333
允許的工作壓力 1600 kPa (16 bar)
流量特性
泄漏等級 A 級符合 ISO 5208(緊密封)
允許介質 冷凍水、低溫熱水、冷卻水、鹽水、去除礦物質的水(軟化水)、摻有防凍劑的水、空氣建議:水處理需依照 VDI 2035 標准
管道連接法蘭 1)PN 16 符合 ISO 7005
面到面尺寸 DIN EN 558,系列 20
頂法蘭(用於安裝執行器的法蘭) EN ISO 5211
旋轉角度 90°
標准環境兼容性 ISO 14001(環境)ISO 9001(質量)RL 2002/95/EG (RoHS)
閥體 DN 50…150 灰鑄鐵 EN-GJL-200 (HT200)
DN 200…600 球墨鑄鐵 EN-GJS-450-10 (QT450-10)
閥軸 不銹鋼 1.4021 (2Cr13)
閥板 球墨鑄鐵 EN-GJS-450-10 (QT450-10),尼龍塗層
閥座 EPDM
VKF42蝶閥適用開關量執行器: SQL321B25、SQL321B50、SQL321B150、SQL321B270、SQL321B570,SQL321B1400,SQL321B2650;
VKF42蝶閥適用模擬量執行器:SQL361B50,SQL361B150,SQL361B270,SQL361B570,SQL361B1400,SQL361B2650
『拾』 sql2005查詢當值為A時顯示30,B時顯示25,C時顯示20,D時顯示10
select (case 列 when 'A' then 30
when 'B' then 25
when 'C' then 20
when 'D' then 10 end) from 表