SELECT
machine_id, operator_id, member_id, card_id, name, paid_amount, due_amount,
paid_date, phone_number, @curRow := @curRow + 1 AS row_number
FROM
transaction
JOIN
(SELECT @curRow := 0) r where card_id='c1' order by Row_number desc limit 3 ;
Run Code Online (Sandbox Code Playgroud)
当我在工作台中运行它时,它返回最后3条记录.但在我的代码中它只返回2条记录.问题是什么?
这是c#代码:
String query3 = "SELECT machine_id,operator_id,member_id,card_id,name,paid_amount,due_amount,paid_date,phone_number ,@curRow := @curRow + 1 AS row_number FROM transaction JOIN (SELECT @curRow := 0) r where card_id=@card order by Row_number desc limit 4 ";
MySqlCommand command3 = new MySqlCommand(query3, con);
command3.Parameters.AddWithValue("@card", cardid);
using (MySqlDataReader rdr3 = command3.ExecuteReader())
{
if …Run Code Online (Sandbox Code Playgroud)