資料庫排序的語句
1、以日期進行排序
select
Rownum
"ID"
,
日期
,
金額,
商品
From
(select
日期,金額,商品
from
表
order
by
日期)
2、在排序後要求資料庫中內容發生變化,如果不是考試的話是沒人故意這么玩的。
任何對於數據的ID欄位進行手工變動都是愚蠢而白痴的行為。
讓然如果是老師故意考你們的話,可以用下面這個簡單方法。
①建立臨時表,使id欄位為自增欄位
create
table
tableName
(
id
INT(20)
not
null
AUTO_INCREMENT,
--自增屬性
日期
char(20)
not
null,
金額
char(5)
not
null,
商品
char(2)
not
null
);
②將排好的數據插入新建的臨時表
Insert
into
tableName(日期,金額,商品)
select
日期,金額,商品
from
原始表
order
by
日期
③將原表改成其他名,並將第二步建的中間表改名為原表名
alter
table
表1
rename
to
表2
我手頭沒有mysql只能按印象寫出代碼,你拿去試一下吧。
我印象中mysql對pl的支持不好,所以只給出了用sql語句的方案,你參考下吧。
『貳』 sql 按欄位指定值排序
sql語句的排序,有止是 asc,desc 簡單的正序、倒序排列,還可以根據需要欄位的值,來執行排序。可使用如下方式:
1.點擊新建查詢:
2.輸入如下語句:
orderby
case`A1`
when a2then1//當值為a2,排在第一個
whena3 then2//當值為a3,排在第二個
whena1 then3//當值為a1,排在第三個
end
asc//按上面順序,正序排列(也可為desc)
ORDER BY 語句用於根據指定的列對結果集進行排序。
ORDER BY 語句默認按照升序對記錄進行排序。
如果希望按照降序對記錄進行排序,可以使用 DESC 關鍵字。
拓展資料:
sql常見語句
更新:update table1 set field1=value1 where 范圍
查找:select * from table1 where field1 like 』%value1%』 (所有包含『value1』這個模式的字元串)
排序:select * from table1 order by field1,field2 [desc]
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1[separator]
『叄』 在SQL語句中,分組用什麼子句,排序用什麼子句
排序採用ORDER BY語句:ORDER BY 語句用於根據指定的列對結果集進行排序。ORDER BY 語句默認按照升序對記錄行排序。如果希望按照降序對記錄進行排序,可以使用 DESC關鍵字。
SQL有兩種使用方式:
一是聯機交互使用,這種方式下的SQL實際上是作為自含型語言使用的。
另一種方式是嵌入到某種高級程序設計語言(如C語言等)中去使用。前一種方式適合於非計算機專業人員使用,後一種方式適合於專業計算機人員使用。盡管使用方式不向,但所用語言的語法結構基本上是一致的。
(3)資料庫排序的語句擴展閱讀:
以同一種語法結構提供兩種使用方式:
SQL既是自含式語言,又是嵌入式語言。作為自含式語言,它能夠獨立地用於聯機交互的使用方式,用戶可以在終端鍵盤上直接輸入SQL命令對資料庫進行操作。作為嵌入式語言,SQL語句能夠嵌入到高級語言(如C、 C#、JAVA)程序中,供程序員設計程序時使用。
而在兩種不同的使用方式下,SQL的語法結構基本上是一致的。這種以統一的語法結構提供兩種不同的操作方式,為用戶提供了極大的靈活性與方便性。
『肆』 SQL語句怎麼寫先按時間排序,再按姓名排序
select client,ID,taskdate from 表名 order BY client asc,taskdate,ID desc(如果讓client為降序的話order by改成group by,asc改成desc,ID要升序desc改成asc)
將欄位依次寫在order by 後面即可 , 中間用逗號隔開
select * from 表 order by time , name
select * from 表 order by time asc , name asc
select * from 表 order by time desc , name desc
select * from 表 order by time asc , name desc
select * from 表 order by time desc , name asc
(注: asc 表示升序 , desc表示降序 , 未明確寫明排序方式時默認是升序 )
與之類似的語法是 group by , 按多個欄位分組時 , 也是依次將多個欄位寫在group by 的後面 , 並用逗號隔開 , 範例如下:
select time , name , sum(*) from 表 group by time , name
(4)資料庫排序的語句擴展閱讀
可以把 SQL 分為兩個部分:數據操作語言 (DML) 和 數據定義語言 (DDL)。
SQL (結構化查詢語言)是用於執行查詢的語法。但是 SQL 語言也包含用於更新、插入和刪除記錄的語法。
查詢和更新指令構成了 SQL 的 DML 部分:
SELECT- 從資料庫表中獲取數據
UPDATE- 更新資料庫表中的數據
DELETE- 從資料庫表中刪除數據
INSERT INTO- 向資料庫表中插入數據
SQL 的數據定義語言 (DDL) 部分使我們有能力創建或刪除表格。我們也可以定義索引(鍵),規定表之間的鏈接,以及施加表間的約束。
SQL 中最重要的 DDL 語句:
CREATE DATABASE- 創建新資料庫
ALTER DATABASE- 修改資料庫
CREATE TABLE- 創建新表
ALTER TABLE- 變更(改變)資料庫表
DROP TABLE- 刪除表
CREATE INDEX- 創建索引(搜索鍵)
DROP INDEX- 刪除索引
『伍』 資料庫排序語句
資料庫的排序用order by語句實現。
工具:sqlserver 2008R2
步驟:
1、有如下學生表:
『陸』 怎樣用SQL語句按日期進行從高到低進行排序
用SQL語句按日期進行從高到低進行排序:select * from tmp order by time desc;