日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql取最大一条数据,mysql取出表中,某字段值最大的一条纪录,sql语句

發布時間:2023/12/19 数据库 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql取最大一条数据,mysql取出表中,某字段值最大的一条纪录,sql语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一個為交易表,有唯一id,別名trade_id

一個為交易狀態詳情表,記錄trade_id的多個狀態。

進行了兩個表查詢。查詢某個trade_id的交易情況及最新狀態。

直接粘貼此sql,執行即知。

-- ----------------------------

-- Table structure for `trade_test`

-- ----------------------------

DROP TABLE IF EXISTS `trade_test`;

CREATE TABLE `trade_test` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`user_id` int(11) NOT NULL COMMENT ‘用戶ID‘,

`create_at` int(11) NOT NULL COMMENT ‘創建時間‘,

`totalmoney` decimal(10,2) NOT NULL COMMENT ‘總金額‘,

`tid` int(11) NOT NULL COMMENT ‘交易編號‘,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT=‘交易發起表‘;

-- ----------------------------

-- Records of trade_test

-- ----------------------------

INSERT INTO `trade_test` VALUES (‘1‘, ‘1‘, ‘1451700000‘, ‘60.00‘, ‘1111‘);

INSERT INTO `trade_test` VALUES (‘3‘, ‘2‘, ‘1451800000‘, ‘50.00‘, ‘2222‘);

DROP TABLE IF EXISTS `status_detail_test`;

CREATE TABLE `status_detail_test` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`trade_id` int(11) NOT NULL,

`status_name` varchar(10) DEFAULT NULL,

`brief` text COMMENT ‘狀態說明‘,

`create_at` int(11) DEFAULT NULL COMMENT ‘創建時間‘,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COMMENT=‘交易狀態詳情表‘;

-- ----------------------------

-- Records of status_detail

-- ----------------------------

INSERT INTO `status_detail_test` VALUES (‘1‘, ‘1‘, ‘START‘, null, ‘1453595414‘);

INSERT INTO `status_detail_test` VALUES (‘2‘, ‘1‘, ‘AGREE‘, null, ‘1453595753‘);

INSERT INTO `status_detail_test` VALUES (‘3‘, ‘2‘, ‘START‘, null, ‘1453898857‘);

INSERT INTO `status_detail_test` VALUES (‘4‘, ‘2‘, ‘AGREE‘, null, ‘1453941720‘);

INSERT INTO `status_detail_test` VALUES (‘5‘, ‘2‘, ‘PAY‘, null, ‘1453941924‘);

INSERT INTO `status_detail_test` VALUES (‘6‘, ‘1‘, ‘PAY‘, null, ‘1453942924‘);

INSERT INTO `status_detail_test` VALUES (‘7‘, ‘1‘, ‘TRANSFER‘, null, ‘1455564464‘);

INSERT INTO `status_detail_test` VALUES (‘8‘, ‘1‘, ‘COMPLETE‘, null, ‘1455670471‘);

SELECT

a.id as trade_id,

a.create_at as trade_create_at,

b.id as status_final_id,

b.status_name,

b.create_at as status_create_at

FROM

trade_test AS a ,

status_detail_test AS b

WHERE

b.trade_id = a.id

AND

b.create_at = (select max(create_at) from status_detail_test)

AND

a.id = 1

--

引用一簡單的例子:

http://zhidao.baidu.com/link?url=15DnazEMsBVsoIs_M-WiFfLjt-YI8tEtuvL2yN7aEDe3x8cr4u_OgpgyUy1vJ4Pas3zzhZpQsY1fGs-KdFnI-q

例如:表字段

id,name,age,

要求:取出所有年齡最大的一個紀錄

select top 1 id,name,age from 表 order by age desc

按照年齡倒序排序,然后取第一條。

考慮可能有多人年齡相同,如果都需取出,可以這樣寫:

select id,name,age from 表 where age=(select max(age) from 表)

時間: 02-18

總結

以上是生活随笔為你收集整理的mysql取最大一条数据,mysql取出表中,某字段值最大的一条纪录,sql语句的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。