счётчик

  • Автор темы slavon-x86
  • Дата начала
S

slavon-x86

Есть таблица "counter" с колонкой "ip". В ней храняться IP адреса. Как узнать количество неповторяющихся IP ?
 
G

Guest

Ключевое слово DISTINCT
Ключевое слово DISTINCT запрещает вывод в результирующем наборе повторяющихся
строк. Например, в таблице Orders базы данных Northwind содержатся повторяющиеся
значения в столбце ShipCity. Следующий код позволяет получить список значений ShipCity
без дубликатов:
SELECT DISTINCT ShipCity, ShipRegion
FROM Orders
ORDER BY ShipCity
 
S

slavon-x86

А вот ещё вопрос:

есть колонка типа DATETIME
1. Как выбрать колонки, в которых записано сегодняшнее число;
2. Как выбрать колонки, где время меньше не более чем на 3 мин от текущего (т.е. я хочу сделать сколько человек онлайн на сайте);
 
O

ooo

Если нужно узнать количество неповторяющихся IP ,то select count(distinct ip) from counter;

Колонки на сегодня:

select count(*) from таблица where trunc(колонка)=trunc(sysdate) /* 1.сегодняшнее число */
and to_char(sysdate,'sssss')-to_char(колонка,'sssss')<=180 /* 2. не более 180 секунд */
;
 
S

slavon-x86

ни первое, ни второе не работает
 
S

slavon-x86

По идее вот так:
Код:
select * from таблица where DATEDIFF(sysdate, колонка)<180
но неработает.
И этой функцией решается только 2-я задача.
 
G

Guest

Какая у тебя СУБД?
Если MSSQL попробуй datename.
 
S

slavon-x86

Вобщем мне надо сделать счётчик. Кто-нибудь может помочь ?
 
E

European

<!--QuoteBegin-ooo+26:12:2006, 05:57 -->
<span class="vbquote">(ooo @ 26:12:2006, 05:57 )</span><!--QuoteEBegin-->Если нужно узнать количество неповторяющихся IP ,то select count(distinct ip) from counter;
[snapback]51726" rel="nofollow" target="_blank[/snapback]​
[/quote]
<!--QuoteBegin-slavon-x86+26:12:2006, 15:37 -->
<span class="vbquote">(slavon-x86 @ 26:12:2006, 15:37 )</span><!--QuoteEBegin-->ни первое, ни второе не работает
[snapback]51796" rel="nofollow" target="_blank[/snapback]​
[/quote]
Так а почему первое не работает?
 
S

slavon-x86

Разобрался. Вот, может кому-то понадобиться...

//хостов сегодня
Код:
SELECT DISTINCT колонка_с_ip FROM таблица WHERE TO_DAYS(NOW()) - TO_DAYS(колонка_DATETIME) <= 1

//хостов онлаин
Код:
SELECT DISTINCT колонка_с_ip FROM таблица WHERE UNIX_TIMESTAMP(NOW()) - UNIX_TIMESTAMP(колонка_DATETIME) <= 180
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!