+----+-------------+
| id | timestamp |
+----+-------------+
| 1 |1367664559 |
+----+-------------+
| 2 |1367664669 |
+----+-------------+
| 3 |1367664779 |
+----+-------------+
| .. |........... |
+----+-------------+
Известно id. На основе id нужно получить количество записей, время регистрации которых меньше чем у известного id. Двумя запросами я знаю как получить, а одним можно?
SELECT COUNT(`timestamp`) FROM `tbl`WHERE `timestamp` < (SELECT `timestamp` FROM `tbl` WHERE `id` = $id)
_____________
Стимулятор ~yoomoney - 41001303250491
Первым по id достаю его время, вторым считаю записи с временем, меньшим полученного.
Без вложенного не обойтись, я понял.
Так что же лучше? SELECT COUNT(`timestamp`) или SELECT COUNT(*) ?
glock18
4.05.2013 - 15:31
Цитата (Guest @ 4.05.2013 - 11:22) |
Так что же лучше? SELECT COUNT(`timestamp`) или SELECT COUNT(*) ? |
Ничего не лучше.
У них просто разный смысл:
COUNT(`timestamp`) не считает строки где timestamp is null,
COUNT (*) считает все. Есть еще различие в работе с индексами, но в контексте данного вопроса оно не имеет значения.
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.