|
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
|
|
Статистика пользователей по возрасту10.06.2010, 03:12. Показов 1774. Ответов 15
Метки нет (Все метки)
Доброго времени суток, хотел бы сделать статустику пользователей по возросту. К примеру:
до 18 лет - от 18 до 23 - -----||----- Проблема в том, что в поле дата рождения записана как "1.1.1950". Вопрос вот в чем, как обработать базу так, чтобы он брал из неё только год, а не день, месяц и год. Просто точная статистика не нужна, нужна примерная. На теории это делается через split как я понял, вытаскивается год и минусуется из текущего, а дальше через if. Но как split прикрутить к запросу и после этого ещё сложить полученные результаты и предоставить не могу понять Помогите пожалуйста...
0
|
|
| 10.06.2010, 03:12 | |
|
Ответы с готовыми решениями:
15
Статистика пользователей - как идентифицировать пользователей с одинаковыми именами Как провести сортировку после выбора данных пользователей по возрасту? Повседневная статистика пользователей |
|
Почетный модератор
11559 / 4353 / 453
Регистрация: 12.06.2008
Сообщений: 12,455
|
||||||
| 10.06.2010, 08:31 | ||||||
|
Можно использовать YEAR(<поле с датой>)
Или лучше использовать DATE_ADD(<поле с датой>,INTERVAL <сколько лет> YEAR)
1
|
||||||
|
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
|
||||||
| 10.06.2010, 21:30 [ТС] | ||||||
|
Спасибо. А если сделать статистику в режиме он-лайн? тоесть на данный момент зарегестрировано столько-то пользователей до 18, столько то от 18 до 23, от 23 и т.д.?
я представляю это примерно так:
0
|
||||||
|
Почетный модератор
11559 / 4353 / 453
Регистрация: 12.06.2008
Сообщений: 12,455
|
||||||||
| 10.06.2010, 21:43 | ||||||||
1
|
||||||||
|
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
|
|
| 10.06.2010, 21:47 [ТС] | |
|
да, именно varchar. Просто когда делал сайт, не задумывался и записывал для более легкого вывода. Спасибо.
Не заметил, так тут не отделено 3 значение
0
|
|
|
Почетный модератор
11559 / 4353 / 453
Регистрация: 12.06.2008
Сообщений: 12,455
|
|||||||||||
| 10.06.2010, 22:16 | |||||||||||
|
Можешь переделать всё в DATE... выполни по очереди 3 такие запроса
1
|
|||||||||||
|
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
|
||||||
| 10.06.2010, 22:46 [ТС] | ||||||
|
В таком случае получилось, что дата отображается как год, месяц и день, правильно? или год день и месяц?
В общем получилось Остался вопрос, на сервере 5 человек, сделал так:
До 18: 5 От 18 до 23: 5 От 23 до 30: 4 От 30 до 50: 4 После 50: 0 Хотя до 18 Нет пользователей
0
|
||||||
|
|
|||||||
| 10.06.2010, 23:15 | |||||||
![]() А по поводу запроса, попробуйте так:
0
|
|||||||
|
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
|
|||||||||||
| 10.06.2010, 23:21 [ТС] | |||||||||||
|
Хотя я сделал. Сделал запрос наобщее кол-во пользователей и вычел из него получившиеся. Спасибо
![]() romchiksoad, В твоем случае он показывает вот так: До 18: 5 От 18 до 23: 5 От 23 до 30: 5 От 30 до 50: 5 После 50: 5 Я сделал вот так:
А если ещё сделать в % соотношении то так:
Соотношение в %: До 18: 0% От 18 до 23: 0% От 23 до 30: 20% От 30 до 50: 20% После 50: 100% Соотношение в кол-ве: До 18: 0 От 18 до 23: 0 От 23 до 30: 1 От 30 до 50: 1 После 50: 5 Все как я и хотел. Спасибо
0
|
|||||||||||
|
|
|
| 10.06.2010, 23:25 | |
|
acupation, жестко
тогда надо еще "курить" по этому вопросу
0
|
|
|
Почетный модератор
11559 / 4353 / 453
Регистрация: 12.06.2008
Сообщений: 12,455
|
|
| 10.06.2010, 23:25 | |
|
Наверное, знак надо не "больше", а "меньше"
....WHERE DATE_SUB(NOW(),INTERVAL 18 YEAR)<birth
0
|
|
|
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
|
|
| 10.06.2010, 23:26 [ТС] | |
|
хм, хотя я заметил, что у меня статистика не правильная)
0
|
|
|
Почетный модератор
11559 / 4353 / 453
Регистрация: 12.06.2008
Сообщений: 12,455
|
|||||||||||
| 10.06.2010, 23:28 | |||||||||||
|
И опять же не надо все строки выдергивать из таблицы, только для того, что бы их число посмотреть. Это очень не оптимально.
Если у тебя таблица MyISAM, то можно
0
|
|||||||||||
|
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
|
|
| 10.06.2010, 23:38 [ТС] | |
|
MyISAM у меня. Я тут посмотрел... Он промежуток получается не счтает от и до, а берет чисто до.
До 18: 0 От 18 до 23: 0 От 23 до 30: 1 От 30 до 50: 1 После 50: 5 Как изменить интеррвал? через and?
0
|
|
|
Почетный модератор
11559 / 4353 / 453
Регистрация: 12.06.2008
Сообщений: 12,455
|
||||||
| 10.06.2010, 23:44 | ||||||
|
Можно построить немного по другому запрос:
Проблема будет только в том, случае, если кому-то в этот день исполнилось 18 лет (или любое другое пограничное количество лет)... тогда он отнесёт его к двум категориям.
1
|
||||||
|
67 / 67 / 6
Регистрация: 26.03.2010
Сообщений: 546
|
||||||
| 11.06.2010, 00:29 [ТС] | ||||||
0
|
||||||
| 11.06.2010, 00:29 | |
|
Помогаю со студенческими работами здесь
16
Статистика пользователей: показывать, сколько пользователей работают сейчас в программе статистика пользователей и роботов Статистика Пользователей PHP Статистика времени работы пользователей Статистика работы пользователей с базой Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога
Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
|
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование
. \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json>
Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом.
# Check if. . .
|
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так:
https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347
Основана на STM32F303RBT6.
На борту пять. . .
|
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
|
|
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу,
и светлой Луне.
В мире
покоя нет
и люди
не могут жить в тишине.
А жить им немного лет.
|
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила»
«Время-Деньги»
«Деньги -Пуля»
|
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога
Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
|
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога
Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
|