我正在使用MySQL进行Win-form项目。
在我的问题中,...我想在My Project中显示第一个数据。
我知道主键是否像1那样标准意味着它很容易。但在我的项目中,主键id是可更改的。如果升序或降序也取得所有记录,然后精细地给出结果。
我想要第一个记录na?。是否可以识别MySQL中的第一个记录查询。
我的代码 -
connection.Open();
command.CommandText = "select student_code from attendance_master where subject_code='" + subcode + "' and period_code='" + percode + "' and date='" + date + "'";
Reader = command.ExecuteReader();
while (Reader.Read())
{
stdcode = Reader[0].ToString();
}
connection.Close();
或者其他方面我可以找到主要id值的最小值并选择特定记录。我不这是最好的方法。但它减少了不必要的记录执行。
请给我一个IDEA ....
答案 0 :(得分:3)
尝试使用限制语句,示例:
SELECT * FROM table LIMIT 0, 1
答案 1 :(得分:3)
这个怎么样?
SELECT TOP 1 * FROM table
答案 2 :(得分:1)
你可以这样做
connection.Open();
command.CommandText = "select student_code from attendance_master where subject_code='" + subcode + "' and period_code='" + percode + "' and date='" + date + "'";
Reader = command.ExecuteReader();
if (Reader.Read())
{
stdcode = Reader[0].ToString();
}
connection.Close();
使用SQL的方式对于SQL注入是开放的,这是一个很大的安全问题! 更好地使用SQL中的参数...
答案 3 :(得分:0)
您必须按主键对行进行排序:http://dev.mysql.com/doc/refman/5.5/en/sorting-rows.html
然后,按LIMIT
子句限制输出:http://dev.mysql.com/doc/refman/5.5/en/select.html
答案 4 :(得分:0)
在Mysql中 SELECT * FROM表LIMIT 0,1
IN SQL SELECT TOP 1 * FROM table