MySQL獲取所有分類(lèi)的前N條記錄_MySQL教程
推薦:將MySQL的臨時(shí)目錄建立在內(nèi)存中的教程MySQL 系統(tǒng)會(huì)在內(nèi)存(MEMORY)和磁盤(pán)(MyISAM)中建立臨時(shí)表,如何能知道在磁盤(pán)中建立了多少臨時(shí)表以及在內(nèi)存中建立多少臨時(shí)表呢?你可以通過(guò)下面命令獲知: mysql SHOW GLOBAL STATUS LIKE 'Created_tmp%tables'; +-------------------------+----------+ | Variable_name
比如有文章表 Article(Id,Category,InsertDate),現(xiàn)在要用SQL找出每種類(lèi)型中時(shí)間最新的前N個(gè)數(shù)據(jù)組成的集合,一段不錯(cuò)的代碼,留存?zhèn)溆?/p>
SELECT A1.*
FROM Article AS A1
INNER JOIN (SELECT A.Category,A.InsertDate
FROM Article AS A
LEFT JOIN Article AS B
ON A.Category = B.Category
AND A.InsertDate <= B.InsertDate
GROUP BY A.Category,A.InsertDate
HAVING COUNT(B.InsertDate) <= @N
) AS B1
ON A1.Category = B1.Category
AND A1.InsertDate = B1.InsertDate
ORDER BY A1.Category,A1.InsertDate DESC
@N 就是你要取多少條
下面是我用到了一個(gè)產(chǎn)品分類(lèi)表中,superId是大分類(lèi),prcid是產(chǎn)品分類(lèi)。能用SQL完成的功能就要盡量用SQL語(yǔ)句來(lái)完成,這既簡(jiǎn)潔又高效。
SELECT
A1.*
FROM
prcKx AS A1
INNER JOIN (
SELECT
A.superId,
A.prcid
FROM
prcKx AS A
LEFT JOIN prcKx AS B ON A.superId = B.superId
AND A.prcid <= B.prcid
GROUP BY
A.superId,
A.prcid
HAVING
COUNT(B.prcid) <= 7
) AS B1 ON A1.superId = B1.superId
AND A1.prcid = B1.prcid
ORDER BY
superId,
prcid
需求是這樣的(CSDN上的一個(gè)問(wèn)題):mysql中有個(gè)表:article(字段:id,type,date),type有1-10,10種類(lèi)型。現(xiàn)在要用SQL找出每種類(lèi)型中時(shí)間最新的前N個(gè)數(shù)據(jù)組成的集合。
這個(gè)問(wèn)題應(yīng)該有很多方法可以實(shí)現(xiàn),下面就來(lái)說(shuō)說(shuō)在網(wǎng)上看到的一位高手的實(shí)現(xiàn)(用一條SQL語(yǔ)句實(shí)現(xiàn)的,個(gè)人感覺(jué)非常好,所以拿來(lái)和大家分享):
select a1.* from article a1
inner join
(select a.type,a.date from article a left join article b
on a.type=b.type and a.date<=b.date
group by a.type,a.date
having count(b.date)<=2
)b1
on a1.type=b1.type and a1.date=b1.date
order by a1.type,a1.date desc
注:上面sql語(yǔ)句中的2代表的就是前面提到的N。
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
分享:介紹使用WordPress時(shí)10個(gè)常用的MySQL查詢(xún)大多數(shù)使用 WordPress 搭建的網(wǎng)站,其后臺(tái)都是 MySQL 數(shù)據(jù)庫(kù),經(jīng)常我們需要定制 WordPress 的功能,這里我們列表 10 個(gè)最有用的 WordPress 的數(shù)據(jù)庫(kù)查詢(xún),你需要一個(gè)數(shù)據(jù)庫(kù)的管理工具,例如 phpMyAdmin 或者 Navicat 等來(lái)執(zhí)行這些 SQL 語(yǔ)句。 1. 將所有文件的作者改為
- 在MySQL中使用GTIDs復(fù)制協(xié)議和中斷協(xié)議的教程
- 將MySQL的臨時(shí)目錄建立在內(nèi)存中的教程
- 介紹使用WordPress時(shí)10個(gè)常用的MySQL查詢(xún)
- 初步介紹MySQL中的集合操作
- 簡(jiǎn)單介紹MySQL中的事務(wù)機(jī)制
- mysql查詢(xún)區(qū)分大小寫(xiě)高性能
- WordPress如何修改Mysql數(shù)據(jù)庫(kù)的表前綴
- sqlitestudio怎么用
- MS SQL Server Management Studio Express怎么安裝?
- SQL Server 錯(cuò)誤:15023
- mysql數(shù)據(jù)庫(kù)執(zhí)行SQL導(dǎo)出數(shù)據(jù)方法
- MySQL最常見(jiàn)的操作語(yǔ)句小結(jié)
MySQL教程Rss訂閱編程教程搜索
MySQL教程推薦
- mysql 無(wú)法連接問(wèn)題的定位和修復(fù)過(guò)程分享
- MySQL更新和刪除
- MySql優(yōu)化指南
- Mysql兩種情況下更新字段中部分?jǐn)?shù)據(jù)的方法
- 介紹使用WordPress時(shí)10個(gè)常用的MySQL查詢(xún)
- Mysql存儲(chǔ)引擎InnoDB和Myisam的六大區(qū)別
- MySQL數(shù)據(jù)庫(kù)中與 NULL值有關(guān)的幾個(gè)問(wèn)題
- 如何用workbench導(dǎo)出mysql數(shù)據(jù)庫(kù)關(guān)系圖
- Ubuntu 11.04 x64 編譯安裝mysql
- 網(wǎng)站模板:SQL2005CLR函數(shù)擴(kuò)展 - 關(guān)于山寨索引
猜你也喜歡看這些
- 詳解優(yōu)化SQL Server數(shù)據(jù)庫(kù)的方法
- 關(guān)于SQL 存儲(chǔ)過(guò)程入門(mén)基礎(chǔ)(流程控制)
- 解析最基本的sql語(yǔ)句操作
- 解析用SQL Server處理物料清單規(guī)則
- CMD命令操作MSSQL2005數(shù)據(jù)庫(kù)(命令整理)
- 揭秘八個(gè)有用的WordPress的SQL語(yǔ)句
- 如何將sql執(zhí)行的錯(cuò)誤消息記錄到本地文件中實(shí)現(xiàn)過(guò)程
- 如何從子表里刪除數(shù)據(jù)
- 解讀微軟SQL Server 2008空間數(shù)據(jù)
- SQL Server 2008 新特性 總結(jié)復(fù)習(xí)(一)
- 相關(guān)鏈接:
- 教程說(shuō)明:
MySQL教程-MySQL獲取所有分類(lèi)的前N條記錄。