• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Pawn] /top online
#1
Can you explain me how to make a command wich shows players with the most hours on the server, in sqlite? YSI included

Please.
  Reply
#2
You don't need YSI if you're using sqlite

Code:
SELECT
   online_time
FROM
   Players
WHERE
    is_online = 1
ORDER BY
    online_time DESC
LIMIT 10;

EDIT: If you want to have command like /top [from] [to], edit the LIMIT to [to] and add OFFSET [from] after LIMIT [to] in the query, example:

Code:
SELECT
   online_time
FROM
   Players
WHERE
    is_online = 1
ORDER BY
    online_time DESC
LIMIT 5 OFFSET 10;
That will show 5 players from 11th to 15th place
Using Pawn.CMD?

If you're doing so, this is the very first sign that you absolutely shouldn't utilize your all powerful P-Code knowledge in any of the scripting discussion topics.
  Reply
#3
(2021-01-09, 07:36 PM)Pinch Wrote: You don't need YSI if you're using sqlite

Code:
SELECT
? online_time
FROM
? Players
WHERE
? ? is_online = 1
ORDER BY
? ? online_time DESC
LIMIT 10;

EDIT: If you want to have command like /top [from] [to], edit the LIMIT to [to] and add OFFSET [from] after LIMIT [to] in the query, example:

Code:
SELECT
? online_time
FROM
? Players
WHERE
? ? is_online = 1
ORDER BY
? ? online_time DESC
LIMIT 5 OFFSET 10;
That will show 5 players from 11th to 15th place

[code]YCMD:toponline(playerid, params[], help) {

new szString[256];
format(szString, sizeof(szString), "SELECT online_time FROM Players WHERE is_online = 1 ORDER BY online_time DESC LIMIT 5 OFFSET 10;");
new DBResult:res = db_query(sqliteconnection, szString);

if(db_num_rows(res)) {
new szBuffer;

do
{

format(szBuffer, sizeof szBuffer, "%s\n", szBuffer);
}
while(db_next_row(res));

ShowPlayerDialog(playerid, 0, DIALOG_STYLE_TABLIST, "TOP ONLINE", szBuffer, "Close", "");

}
else {
return SendErrorMessage(playerid, "Can't find any player.");
}

return 1;
}[/code]


i tried this, but dont work. Why?
  Reply
#4
Why do I have a feeling that you just copied my query without adapting it to your database..?
Using Pawn.CMD?

If you're doing so, this is the very first sign that you absolutely shouldn't utilize your all powerful P-Code knowledge in any of the scripting discussion topics.
  Reply
#5
I created only 2 column in 'Players', is_online and online_time. But i dont know how to adapt it
  Reply


Forum Jump: