1

我想获取与最大序列号对应的记录

slno            date      name

1-22-12-2011-1  1/1/2012  Amrutha
1-22-12-2011-2  1/1/2012  Amrutha
1-22-12-2011-3  1/1/2012  Amrutha

我想要一个返回与 slno 对应的数据的查询1-22-12-2011-3。我的意思是最后一个位置的最大值。我怎样才能为它写一个查询?我的数据库管理系统是 MySQL。

4

1 回答 1

2

假设您有相同格式的数据,例如1-22-12-2011-1

下面应该工作

SELECT MAX(CONCAT(
           substr(slno,1,1), 
           substr(slno,3,2), 
           substr(slno,6,2),
           substr(slno,9,4),
           substr(slno,14,1)))
as "newslno"
FROM myTable;

这将为您提供最大slno的桌子

在 sqlfiddle 演示


更新 1

我认为您需要在 WHERE 语句中添加 AND 条件...AND name='Amrutha'

SELECT MAX(CONCAT( 
                 substr(slno,1,1), 
                 substr(slno,3,2), 
                 substr(slno,6,2), 
                 substr(slno,9,4), 
                 substr(slno,14,1))) as "newslno" 
FROM u_investment 
WHERE investorcode='0809/ 115' AND name='Amrutha'
于 2012-07-09T10:32:18.350 回答