常用SQL語句(嵌套子查詢/隨機等等)詳細整理

來源:互聯網
上載者:User

1.SQL 插入語句得到自動產生的遞增ID值 複製代碼 代碼如下:insert into Table1(Name,des,num) values ('ltp','thisisbest',10);
select @@identity as 'Id'

2.實現是1 或0 想顯示為男或女 複製代碼 代碼如下:select name,Sex=(case Sex when '1' then '男' when '0' then '女' end) from Tablename

3.嵌套子查詢 複製代碼 代碼如下:select a,b,c from Table1 where a IN (select a from Table2)

4.顯示文章、提交人和最後回複時間 複製代碼 代碼如下:select a.title,a.username,b.adddate from tablename a,(select max(adddate) adddate from tablename where tablename.title=a.title) b

5.隨機提取條記錄的例子 複製代碼 代碼如下:SQL Server:Select Top 10 * From Tablename Order By NewID()

Access:Select Top 10 * From Tablename Order By Rnd(ID)

Rnd(ID) 其中的ID 是自動編號欄位,可以利用其他任何數值來完成,比如用姓名欄位UserName

Select Top 10 * From 表Order BY Rnd(Len(UserName))

MySql:Select * From 表Order By Rand() Limit 10

6.在同一表內找相同屬性的記錄 複製代碼 代碼如下:select UserID from Accounts_Users where UserName is not null group by UserID having count (*)>1

7.查詢類別所有的產品對應資料 複製代碼 代碼如下:SELECT CategoryName,ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;

8.按範圍查詢編號在2 到5 之間的使用者資訊 複製代碼 代碼如下:select * from UserValue where UserID between 2 and 5;

9.排程提前5 分鐘提醒 複製代碼 代碼如下:Select * from TabSchedule where datediff(minute,getdate(),開始時間)<5

10.得出某日期所在月份的最大天數 複製代碼 代碼如下:SELECT DAY(DATEADD(dd, -DAY('2008-02-13'),DATEADD(mm, 1, '2008-02-13'))) AS 'DayNumber'

11.按姓氏筆畫排序 複製代碼 代碼如下:Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as

12.萬用字元的一些用法 複製代碼 代碼如下:1.select * from tablename where column1 like '[A-M]%' 這樣可以選擇出column 欄位中首字母在A-M 之間的記錄
2.select * from tablename where column1 like '[ABC]%' 這樣可以選擇出column 欄位中首字母是A 或者B 或者C 的記錄
3.select * from tablename where column1 like '[A-CG]%' 這樣可以選擇出column 欄位中首字母在A-C 之間的或者是G 的記錄
4.select * from tablename where column1 like '[^C]%' 這樣可以選擇出column 欄位中首字母不是C 的記錄

13.複製表結構(只複製結構,源表名:a,目標表名:b) 複製代碼 代碼如下:select * into b from a where 1<>1 或 select top 0 * into [b] from [a]

14.複製表資料(複製資料,源表名:a,目標表名:b) 複製代碼 代碼如下:insert into b(Name,des,num) select Name,des,num from Table1;

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.