mysql查詢先排序再分組查詢出來的資料不是每組最新的資料
mysql版本:5.7
sql如下:
SELECT b.student_id, b.create_time from (SELECT a.student_id, a.create_time FROM t_cardiopulmonary a ORDER BY a.create_time DESC ) b GROUP BY b.student_id
結果:
student_id為 1的學生 最新時間是2018-05-04 09:22:57
子查詢sql結果集:
竟然是第三條資料,查詢資料得知可以在子查詢臨時表中新增limit要包含查詢出所有資料
修改sql如下:
SELECT b.student_id, b.create_time from (SELECT * FROM t_cardiopulmonary a ORDER BY a.create_time DESC LIMIT 999) b GROUP BY b.student_id
結果:
OK,成功解決問題,還可以用另一個寫法:
select v.student_id, v.create_time from t_cardiopulmonary v
inner join (select student_id, max(create_time) 'create_time' from t_cardiopulmonary
group by student_id) c on v.student_id = c.student_id and v.create_time = c.create_time
相關推薦
mysql查詢先排序再分組查詢出來的資料不是每組最新的資料
mysql版本:5.7sql如下:SELECT b.student_id, b.create_time from (SELECT a.student_id, a.create_time FROM t_cardiopulmonary a ORDER BY a.create_t
Mysql實現先排序後分組的需求
在工作中做報表的時候,需要按建立時間排序,然後在對某些欄位進行分組排序。 首先遇到的問題是以前使用oracle資料庫時可以使用分組排序函式直接排序,由於切換到了Mysql資料庫,所以不能使用相同的解決方法。查詢相關資料後得出了一些靈感。oracle分組排序函式如
thinkphp下group by分組後獲取每組最新資料
$lock = M('locked_record'); $type = 1; $subQuery = $lock->table('sys_locked_record') ->where(array('type'=>$type)) ->order('
查詢mysql 資料庫 如何按年月日分組查詢
以下表為例 按 年下載 按月下載 其中的‘%c’為 月份的數字 除去了 05 中的 0 ; 使用%m 則為05 同理 天就不寫了 以下修飾符 DATE_FORMAT(date,format) 根據format字串格式化date值。下列修飾符
sql語句_自連線_外連線_左連線_子查詢_排序_分組
資料庫 sql語句 分為DDL,DCL,DLL 1),DDL,data define language: 新建一個數據庫 ceate建立 alter修改 drop刪 這三條語句,在下面幾個元件中,都可以用得到 資料庫分為下面幾個元件 a,資料庫,database #如果之前已
MySql下實現先排序後分組
先排序後分組,發現MySql不同的版本有不同的結果,特此記錄。 舉例:要求在shop表中查詢出各型別商店中價格最高的商品。 --表結構-- create table `shop` ( `id` int (10) PRIMARY KEY, `shop_name` var
MySQL學習(三、分組查詢和多表查詢)
一、分組查詢1.MySQL查詢函式 函式的分類: 1,單行函式:將每條資料進行獨立的計算,然後每條資料得到一條結果。 2,多行函式:多條資料同時計算,最終得到一條結果資料。也成為聚集函式、分組函式, 主要用於完成一些統計功能。2.什麼是分組? 針對於班
MYSQL必知必會:分組查詢和子查詢
除了一些彙總函式之外,還可以根據欄位進行分組,分組之後再進行資料的彙總或過濾等其他查詢操作. 下面有張表t5,分別有id,name,subject,score四個欄位. 1.分組過濾. 分組過濾是把一張表內的剩餘的記錄通過某個欄位進行分組,關鍵詞是gr
MySQL全面瓦解10:分組查詢和聚合函式
概述 相信我們經常會遇到這樣的場景:想要了解雙十一天貓購買化妝品的人員中平均消費額度是多少(這可能有利於對商品價格區間的定位);或者不同年齡段的化妝品消費佔比是多少(這可能有助於對商品備貨量的預估)。 這個時候就要用到分組查詢,分組查詢的目的是為了把資料分成多個邏輯組(購買化妝品的人員是一個組,不同年齡段購買
MySQL UNION、排序、分組、連線、NULL值處理和正則表示式
UNION SQL UNION 下面的SQL語句從product和orderdetail表中選取所有不同的pCode(只有不同值) SELECT pCode FROM product UNION SELECT pCode FROM orderdetail ORDER BY p
Oracle (05)外來鍵約束.序列.索引.檢視.分頁查詢技術.排序分頁查詢.資料庫表格設計正規化
外來鍵約束 (完整性約束)(fk) ***** 牽扯到兩個表格: 概念: 1. 外來鍵約束, 是存在兩個表格的操作 ! 2. 一張表格我們稱為主表(父表) , 另一張叫做從表(子表) , 定義了外來鍵約束的表格屬於從表 ! 3. 從表的外來鍵欄位, 是在參考主表中的主鍵
MySQL UNION、排序、分組、連線、NULL值處理和正則表示式
UNION SQL UNION 下面的SQL語句從product和orderdetail表中選取所有不同的pCode(只有不同值) SELECT pCode FROM product UNION SEL
在entity framework 中使用 LINQ 對錶進行左關聯查詢且group by 分組查詢的示例,並且按小時分組查詢時間段
有表RealTimeDatas的欄位RecordTime儲存了實時時間,格式為DateTime 現在需要以小時進行分組統計每個時間段的最大值,最小值,和平均值 同時,另一個表Devices中有標準溫度溼度最大最小值範圍,需要將這個結果一併關聯到查詢結果中
1.4.2冒泡法(先排序再去重)
#include<iostream> using namespace std; int main(){ int a[101],n,i,j,t; cout<<"請輸入共有多少
分組查詢取每組最新的資料
CREATE TABLE cy_biz_message ( id INT AUTO_INCREMENT COMMENT '主鍵' PRIMARY KEY, send_id INT
查詢資料庫時 採用 分組查詢並 獲取分組後組中最新的一條資料
使用原生可採用: SELECT * FROM lease_note ln WHERE ln.delete_time IS NULL AND ln.id = ( SELECT lns.id FROM lease_note
sql分組(orderBy、GroupBy)獲取每組前一(幾)條資料
sql資料庫實現分組並取每組的前1(幾)條資料 測試資料準備工作: 根據某一個欄位分組取最大(小)值所在行的資料: 建立表並且插入資料 CREATE table Test_orderByOrGroupBy_tb(Name nvarchar(50),Val int,Describe n
Reporting Service 分組問題--按頁分組顯示資料,每組資料新起一頁
新增一張報表之後,新建資料集 報表空白處右擊選擇插入矩陣 得到插入的矩陣 新增一個行組,注意看行組那個大括號哦,要新增在大括號內 預設合併單元格了,拆分 可以把多餘的行組外的行刪掉 在新增的行組中插入表 給
MYSQL基礎上機練習題(二)對資料指定列查詢、條件查詢、查詢結果排序、聚集函式查詢、分組統計查詢
實驗目標:1.掌握指定列或全部列查詢2.掌握按條件查詢3.掌握對查詢結果排序4.掌握使用聚集函式的查詢5.掌握分組統計查詢一、請完成書中實驗7.1,並完成以下問題。1.查詢所有學生的姓名及其出生年份回答以下問題:SQL語句請截圖① 觀察查詢的資料,若年齡不為空是否能求出出生年
關於城市列表按首字母排序、分組及查詢的一個解決方案(mysql端)java
最近要做一個城市列表,網上找了個城市列表往mysql裡面一匯入,OK! 再把城市id,名稱查出來放到list裡面丟給前端客戶端處理。 後面客戶端找過來了,這樣把資料扔過去他那邊不好處理,要求在後臺根據首字母分組之後再傳過去,然後找了一上午處理方法,總體來說有三種方案: 1