Оператор MySQL с параметром ">" или "<"

Есть ли способ, как получить все данные из таблицы, где число больше, чем что-то.

В моем случае я использую время UNIX в базе данных, чтобы можно было легко сравнивать данные. Прямо сейчас я хотел бы посчитать каждый логин, который выше текущего времени UNIX минус 24 часа.

Есть ли способ, как я могу написать это? Я думал о чем-то вроде этого, но не уверен, как я могу написать оператор SQL с < или же >,

function getDailyOnline()
{
    return $this->db->table('users')
        ->where('last_login', $post->id);
}   

Мне нужна команда SQL, не нужно использовать Nette Framework, как в моем "примере".

4 ответа

Решение

Вы можете просто попробовать это:

$this->db->table('users')->where('last_login > ', $post->id);

Вы хотите сделать что-то вроде этого:

SELECT COUNT *
  FROM users
  WHERE last_login > (UNIX_TIMESTAMP() - (24 * (3600)));

Это выберет все строки с last_login старше 24 часов (1 день).

SELECT COUNT(*) AS cnt
  FROM users
 WHERE last_login > (UNIX_TIMESTAMP() - (24 * 60 * 60));

Я только что попробовал, и вы можете пойти на это решение:

$this->db->table("users")
    ->where('last_login > ', $post->id);

ура

Другие вопросы по тегам