Mysql sorts Rownum () and obtains the ranking according to the condition: initializes the table structure.
Initialize table structure
Drop table if exists 'data ';
Create table 'data '(
'Dates' varchar (255) character set utf8 default null,
'Id' int (11) default null,
'Result' varchar (255) character set utf8 DEFAULT NULL
);
Insert into 'dates' ('dates', 'id', 'result') VALUES ('20170101', 1, 'sheng ');
Insert into 'date' ('dates', 'id', 'result') VALUES ('20170101', 2, 'negative ');
Insert into 'date' ('dates', 'id', 'result') VALUES ('20170101', 3, 'negative ');
Insert into 'dates' ('dates', 'id', 'result') VALUES ('20170101', 4, 'sheng ');
Insert into 'dates' ('dates', 'id', 'result') VALUES ('20170101', 5, 'sheng ');
Insert into 'date' ('dates', 'id', 'result') VALUES ('20170601', 6, 'negative ');
Insert into 'dates' ('dates', 'id', 'result') VALUES ('20170101', 7, 'sheng ');
Insert into 'dates' ('dates', 'id', 'result') VALUES ('20170101', 8, 'negative ');
Sort
Select @ rownum: = @ rownum + 1 AS rownum, id, dates
From
'Data', (SELECT @ rownum: = 0) r
Order by dates;
Result
Conditional Query
SELECT rownum, id
From
(Select @ rownum: = @ rownum + 1 AS rownum, id, dates
From
'Data', (SELECT @ rownum: = 0) r
Order by dates) B
WHERE id = 2;
Result