March 5th, 2005

vanity

[ Q ] Невидимый фотограф

О, как хорошо, и как резонирует!

«

... Act exactly as you would without a camera, but take a lot of pictures. Walk in. Be casual. Talk to the people. Engage in the scene or situation. And take pictures. At first, they will notice you. Someone might ask you what you're about. If you're friendly, up-front, and have an explanation for what you're about, nobody will be upset. Those who don't want to be photographed will let you know they don't want to be photographed, and it should be a point of honor for you to respect their wishes. The rest will chat with you or ignore you. Most will in fact ignore you, if only because only a limited number of people can chat with you at one time. By the time you're on your third roll of film (or the digital equivalent thereof), your photographic activities will be totally ignored. You will have become the "invisible photographer" -- with the added reassurance of having given camera-shy people the chance of letting you know they don't want to be photographed.

»


  • Current Music
    10 - rhino jockey
whougonnafool?

[ L ] Группировка по timestamp в MySQL

Кукуца нет, спросить некого, приходится терзать гугл — словно сидишь у моря, бросаешь в него сапог кирзовый на леске, забитый пенопластовыми шариками, смотришь, что за него зацепится, и вытягиваешь. И вытя-я-ягиваешь...

Ситуация: есть таблица записей с таймстампами. Надо получить разбивку по дням/месяцам/годам. То есть делать такой простенький GROUP BY. Но возник сразу вопрос — а как это делать GROUP BY, если в таймстампе у нас ещё есть часы, минуты и секунды? Великий Коллективный Разум в лице веба, проиндексированного Гуглом, даёт нам ответ: надо сначала забубенить перевод таймстампов в какой-нибудь более простой вариант, и по нему группировать. Вопрос производительности снимется только тестированием.

«

to answer your question: yes it's possible. it's DISTINCT and/or group by which will help you. additionally, FROM_UNIXTIME(date, '%M') was named by yourself.

SELECT FROM_UNIXTIME(date, '%Y-%M') AS dt, COUNT(data) AS cnt FROM blogs group by dt ORDER by dt DESC

should do the trick for the current year for each month. for the other years, you have to modify your query a bit:

SELECT FROM_UNIXTIME(date, '%Y') AS dt, COUNT(data) AS cnt FROM blogs group by dt ORDER by dt DESC

you can then code the WHERE-clause yourself to minimize the datastock which needs to be queried at all. i optionally put cnt into the query which contains the number of entries in that month / year.

»


  • Current Music
    Hot Pursuit — Amon Tobin
souloveme?

[ L ] Нетринарные войны

«

Мартин ван Кревельд - профессор истории Еврейского университета в Иерусалиме, автор ряда книг, оказавших глубокое влияние на современную военную теорию. В этих книгах: "Воюющие силы", "Командование в войне" и, особенно, "Трансформация войны" - впервые после Клаузевица по-новому обобщены уроки войн последних столетий и выдвинута оригинальная концепция неконвенциональных войн конца 20 века. В опубликованной в 2004 году книге "Защищая Израиль" Ван Кревельд излагает оригинальный план решения израильско-палестинского конфликта, выдвинутый им еще 17 лет назад и частично реализуемый сегодня Ариелем Шароном.

»

Ван Кревельд предлагает очень интересный взгляд на стратегию новых войн. Начинает он от того, как изменило баланс сил ядерное оружие, продолжая тем, как влияет на стратегии противостояния всеобщее образование и цивилизация, а затем идёт всё самое интересное: психологические факторы, цена победы и всё, что определяет превосходство на уровне геополитики.

Очень и очень хорошо текст играет в сопоставлении с другими „социальными стратегами“ (тем же Тоффлером). Иран и Ирак, Ближний Восток, Европа, Азия и весь мир — все подчиняются набору тенденций, которые и определяют дальнейшее развитие.

Collapse )



  • Current Music
    U2 - Miss Sarajevo
souloveme?

Группировка по месяцу-дню-году в MySQL, часть вторая

Большое спасибо за помощь и отклик kingoleg и gorynych, вопрос удалось решить очень легко: проще всего оказалось использовать DATE_FORMAT, в который мне пришлось уложить стандартный таймстамп, после чего всё отлично и быстро (0.6-0.9 сек при обработке 45-тысячной базы) выдало нужный результат:

SELECT COUNT(user) as user, DATE_FORMAT(changed, '%Y-%m') as mnth FROM `utx_cat` WHERE user='centralasian' GROUP BY mnth;

67732004-08
6992004-09
3512004-10
5012004-11
2252004-12
1692005-01
3472005-02
402005-03

Парадокс в том, что если бы я, не будь ленивой, залезла ещё вчера вечером дома в мануал по MySQL, то в списке функций для работы с датой сама бы наткнулась на DATE_FORMAT с примерами (как и получилось сегодня утром), но:

  • у меня бы не возникло повода об этом написать
  • мне не пришлось бы рыть гугл на предмет этой проблемы (и не пришлось бы читать объяснения)
  • мне не написал бы никто ни строчки, а так — кроме примеров с DATE_FORMAT и FROM_UNIXTIME, а Горыныч ещё и написал письмо о кривизне работы FROM_UNIXTIME.

Персональные коммуникации — сила.

1 | 2

  • Current Music
    U2 - Plot 180