0
我的代码有点问题。 通常,我的代码应该显示杀死最多的玩家。 它应该看起来像这样C++ mysql order by is not ordered
user1 10
user3 9
user6 4
user10 1
user2 0
但它只是随机排序。
这是我的代码:
if (mysql_query(&mysql, "SELECT Name, Kills FROM userdata ORDER BY (Kills) DESC LIMIT 0,10;"))
{
printf("ok");
}
MYSQL_RES *result = mysql_store_result(&mysql);
if (result == NULL)
{
printf("Result is null");
}
int num_fields = mysql_num_fields(result);
MYSQL_ROW row;
int i;
num_fields = mysql_num_fields(result);
while ((row = mysql_fetch_row(result)))
{
unsigned long *lengths;
lengths = mysql_fetch_lengths(result);
for(i = 0; i < num_fields; i++)
{
printf("%.*s", (int) lengths[i],
row[i] ? row[i] : "NULL");
}
printf(" \n");
}
我希望你能帮帮我!
这似乎是'尝试ORDER BY杀死DESC'给我。 –
@RichardHodges这doens't改变任何东西 – lolpop16
你误会了我。该SQL语句按照Kills的降序顺序要求结果。这正是你所拥有的。这正是你所要求的。 –