『壹』 sql排序查詢問題。
什麼資料庫?
如果有分析函數可以這樣寫
select
row_number() over (partition by t.hotelname order by t.iscuidan desc,t.comedate asc,t.arrivetime asc) as rn,
t.*
from Test t
order by t.iscuidan desc,t.comedate asc,t.arrivetime asc
『貳』 sql語句查詢排序
你要先提供A,B 兩個表的關聯欄位才能查詢A表時按照B表的b表裡面的名稱生效日期排序,例如select A.NAME,A.COUNT from
(SELECT NAME,COUNT FROM TABLEA GROUP BY NAME) A LEFT JOIN (SELECT * FROM TABLEB) B ON A.關聯欄位=B.關聯欄位 ORDER BY B.名稱生效日期 asc
『叄』 SQL 語句復雜排序查詢問題
order by 可以跟case語句,你用case語句把規則寫出來就行,比如:
order by (case when column3 is null then (column2+3) else column3 end)
請根實際體情況和排序規則改寫…
『肆』 sql的查詢一組數據按照要求排序並查看
--1.建表createtable表(datadate,namevarchar(10))--2.插入數據insertinto表values('2010-1-1','老李')insertinto表values('2011-1-1','小王')insertinto表values('2011-1-1','老李')insertinto表values('2012-1-1','小王')insertinto表values('2012-1-1','老李')insertinto表values('2012-1-1','張大')insertinto表values('2013-1-1','小王')insertinto表values('2013-1-1','老李')insertinto表values('2013-1-1','張大')insertinto表values('2014-1-1','小王')insertinto表values('2014-1-1','老李')insertinto表values('2014-1-1','張大')insertinto表values('2015-1-1','小王')insertinto表values('2015-1-1','老李')insertinto表values('2015-1-1','張大')--3.添加一列altertable表addsint--4如果只是查詢(按name分組,data降序產生序列號)select*,Row_number()over()Asidfrom表--5.1如果需要更新WithTAs(select*,Row_number()over()Asidfrom表)UpdateTSetS=id--5.2查詢更新後的結果select*from表orderbyname,datadesc『伍』 SQL查詢並排序問題
select * from 表 where 欄位 in (x1,x2,x3,x4.....) order by 欄位 ASC/DESC
此中排序欄位是索引條件中欄位,ASC為升序,DESC為降序,此中的排列會以X1,X2,X3排序,但X1可能有很多數據,如果在X1內部排序,請加上第二排序。
select * from 表 where 欄位 in (x1,x2,x3,x4.....) order by 欄位 ASC/DESC,欄位2 ASC/DESC
此表達式是在X1,X2等排序的基礎上再按欄位2進行排序!
我就不明白,如何是多數據,X1,X2等又包含多個條記錄,你就不想用Group呢?
你想看一下group by 的使用方法,對時可以對分組條件進行限定,關鍵詞是having,使用方法類where,但與where是有區別的!
『陸』 關於SQL SERVER查詢之後排序問題!
用order
by,給你個例子
你看看
就明白了:
SELECT
au_lname
FROM
authors
ORDER
BY
au_lname
當這個SELECT語句執行時,作者名字的顯示將按字母順序排列。ORDER
BY子句將作者名字按升序排列。
你也可以同時對多個列使用ORDER
BY子句。例如,如果你想同時按升序顯示欄位au_lname和欄位au_fname,你需要對兩個欄位都進行排序:
SELECT
au_lname,au_fname
FROM
authors
ORDER
BY
au_lname
,au_fname
這個查詢首先把結果按au_lname欄位進行排序,然後按欄位au_fname排序。記錄將按如下的順序取出:
au_lname
au_fname
…………………………………………………………………….
Bennet
Abraham
Ringer
Albert
Ringer
Anne
Smith
Meander
…
(23
row(s)
affected)
注意有兩個作者有相同的名字Ringer。名為Albert
Ringer的作者出現名為Anne
Ringer的作者之前,這是因為姓Albert按字母順序應排在姓Anne之前。
如果你想把查詢結果按相反的順序排列,你可以使用關鍵字DESC。關鍵字DESC把查詢結果按降序排列,如下例所示:
SELECT
au_lname,au_fname
FROM
authors
WHERE
au_lname=」Ringer」
ORDER
BY
au_lname
,au_fname
DESC
這個查詢從表authors中取出所有名字為Ringer的作者記錄。ORDER
BY子句根據作者的名字和姓,將查詢結果按降序排列。結果是這樣的:
au_lname
au_fname
……………………………………………………………………………………….
Ringer
Anne
Ringer
Albert
(2
row(s)
affectec)
注意在這個表中,姓Anne出現在姓Albert之前。作者名字按降序顯示。
你也可以按數值型欄位對一個查詢結果進行排序。例如,如果你想按降序取出所有書的價格,你可以使用如下的SQL查詢:
SELECT
price
FROM
titles
ORDER
BY
price
DESC
這個SELECT語句從表中取出所有書的價格,顯示結果時,價格低的書先顯示,價格高的書後顯示。
『柒』 sql 語句排序 在查詢結果中按人數降序排列,若人數相同,則按課程號升序排列
代碼如下:
select xuehao as 學號,score as 總成績
from CJBwhere xuehao in(
select xuehao from XSB)
group by xuehao,score
order by score desc,xuehao
select id as 學號, sum(score) as 總成績
from 成績表
group by id
order by sum(score) desc, id asc
(7)sql排序後查詢擴展閱讀
ORDER BY 語句用於對結果集進行排序。
ORDER BY 語句用於根據指定的列對結果集進行排序。
ORDER BY 語句默認按照升序對記錄進行排序。
如果您希望按照降序對記錄進行排序,可以使用 DESC 關鍵字。
order by 是用在where條件之後,用來對查詢結果進行排序。
order by 欄位名 asc/desc 。
asc 表示升序(默認為asc,可以省略)。
desc表示降序。
order by 無法用於子查詢,否則會報錯:除非另外還指定了 TOP 或 FOR XML,否則,ORDER BY 子句在視圖、內聯函數、派生表、子查詢和公用表表達式中無效。
『捌』 根據名字排序查詢 SQL
1、在SQL中,排序關鍵字為ORDER
BY。
2、假如要查詢表t1中數據並按「名字」欄位排序,可以使用以下語句:
SELECT * FROM t1 ORDER BY 名字3、上述排序方式默認為正序排列,若想倒序排列,可以在語句最後加上
DESC。
『玖』 sql 排序列與狀態列 綜合查詢
假設你這張數據表的表名是t1,欄位名分別是id、title、sort、state按id排列的sql查詢:select
*
from
t1
order
by
id
desc如果按id和state排列的sql查詢:select
*
from
t1
order
by
id
desc,
state
desc如果不是按倒序排列,請將desc去掉。sql2000與2005常用的sql語句的寫法與語法沒有區別,從2000到2005版本升級後,常用sql語句無須調整。希望能幫到你。
『拾』 SQL查詢排序後前20條語句
SELECTC.DFROM(
SELECTC,D,ROWNUM RNFROM(
SELECTT.*FROMTABLE1 ORDER BY B DESC --降序
) T1
)WHERERN <= 20
註:用ROWNUM的話,你要先排好序,然後再用ROWNUM生成偽列,再限制行數。
(10)sql排序後查詢擴展閱讀:
關於sql語句查詢排序
一、sql查詢單詞
order by 是用在where條件之後,用來對查詢結果進行排序
order by 欄位名 asc/desc
asc 表示升序(默認為asc,可以省略)
desc表示降序
order by 無法用於子查詢,否則會報錯:除非另外還指定了 TOP 或 FOR XML,否則,ORDER BY 子句在視圖、內聯函數、派生表、子查詢和公用表表達式中無效。
二、關聯查詢(左外查詢)(jt項目菜單查詢)
<select id="findObjects" resultMap="map">
select c.*,p.name parentNam
from sys_menus c left join sys_menus p
on c.parentId=p.id
三、用ORDER BY 子句
SELECT <列名列表> FROM <表名>[WHERE 條件]ORDER BY <欄位名1> [ASC|DESC] [ ,欄位名2 [ASC|DESC] ] [,...n]--order by <欄位名1> (不寫ASC|DESC, 則默認升序ASC)