[SQL] Запрос на объединение нескольких таблиц

Возникла задача просмотреть в БД личные сообщения пользователей с форума IPB. При этом хочется вывести их в удобном для понимания виде: ID сообщения, автор, тема, тело сообщения.

Т.к. эти данные хранятся в трех разных таблицах, то на помощь приходит оператор JOIN:

SELECT db_name.message_posts.msg_id, db_name.message_posts.msg_author_id, db_name.members.name, db_name.message_topics.mt_to_member_id, db_name.message_topics.mt_title, db_name.message_posts.msg_post
FROM db_name.message_topics
INNER JOIN db_name.message_posts ON db_name.message_posts.msg_topic_id = db_name.message_topics.mt_id
INNER JOIN db_name.members ON db_name.members.member_id = db_name.message_topics.mt_starter_id
ORDER BY msg_id DESC;

Результаты выборки упорядочены в обратном порядке для того, чтобы видеть самые последние сообщения.

Ответ Чемберлену

Вчера в СМИ появилась информация, что группа «Тату» выступит на церемонии открытия сочинской Олимпиады. На фоне западного бурления об ущемлении прав геев в России, выступление Юли и Кати в данном случае кажется чуть ли не идеальным вариантом, чтобы потроллить протестные массы, призывающие, к примеру, во время церемонии открытия зажечь фонарики в поддержку российского ЛГБТ-общества.

«Тату» — это не только наша самая успешная поп-группа, добившееся международного признания, но и устоявшийся сценический образ «школьниц-лесбиянок». Пока зарубежные сторонники все еще придумывают, как еще можно поддержать гомосексуалистов на «путинской Олимпиаде», наши уже придумали — поддержать выступлением российского дуэта группы «Тату». И кто теперь скажет, что правительство притесняет геев?

Правда, пока все это не больше, чем слухи, т.к. официального подтверждения от группы не последовало, а значит, возможно, Олимпиада обойдется и без них. Но мне все же хочется, чтобы все было  как раз наоборот.

Про первые $15 на uTest.com

Есть такой сайт — uTest.com. Это площадка, на которой заказчик может искать людей, готовых протестировать его продукт. Сайт весьма популярный за бугром, который в первую очередь ставит на качество оказываемых услуг.

Между заказчиком и конечными тестировщиками выступают, как и в обычных практиках, посредники в виде PM’а (Project Manager) и TM’а (Test Manager). PM набирает команду и потом отдает работу TTL (Test Team Lead), который занимается консультацией по вопросам тестировщиков, общается с PM о продукте и пр. Если у ТТL’а имеется статут Premier, то он также может еще апрувить или реджектить  найденные ошибки.

Большая часть людей, которые выступают в качестве исполнителей, не являются профессиональными тестировщиками. Таким образом, uTest.com — это хорошая площадка для фрилансеров (в основном —  любителей), которые готовы помочь проверить продукт и при этом заработать.

Я зарегистрирован на uTest еще с конца 2012 года, но активности там никакой не проявлял в виду сложной системы отбора исполнителей. И вот недавно меня включили в один из циклов. Задание было не сложное — пройтись по тест-кейсам и проверить правильность работы приложения. Т.к. в ходе верификации ошибок не было найдено, то я смог получить только 15 долларов. Ну что ж, на первый раз неплохо. Выводить деньги можно через систему PayPal или Payoneer. В будущем постараюсь более активно искать проекты ^_^

Про бесплатный Wi-Fi в питерском метро

Станции петербургского метрополитена обзавелись публичными точками доступа (IP: 94.72.41.10, провайдер — MTC / Lanck Telecom). Пока вроде, это только эксперимент, и возможно, Wi-Fi присутствует не на всех станциях. Самое интересное в том, что пользоваться интернетом, естественно, можно только в тот момент, когда ты находишься на станции, только отъехал на поезде — уже связь потеряна. Да, в этом плане петербургское метро явно «выделяется» от московского, где Wi-Fi привязан непосредственно к самому составу поезда. Вот и не понятно, на кого тогда этот бесплатный Wi-Fi рассчитан — на пассажиров? Но ведь бОльшую часть они проводят как раз в поезде. Возможно, что в будущем Wi-Fi все таки прикрепят к составу, тогда это будет просто бомба ^_^

Про покупку чехла для iPad Air

Приобрел для своего новенького iPad Air чехол Fliku Smart Coat, у которого задняя крышка — прозрачная. Выглядит очень здорово, потому что на задней стороне моего планшета сделана гравировка, и теперь ее видно всегда. Сам по себе чехол выглядит неплохо, сделан добротно, и местами даже приятно попахивает 🙂 В общем, приобретением я остался доволен.

ipad_cover

Как получить легальную копию iWork?

На осенней презентации Apple было объявлено, что пакет офисных программ iWork, который включает в себя такие приложения, как Keynote, Pages и Numbers, станет абсолютно бесплатным для пользователей новых устройств. Вообще, в этом году Apple, судя по всему, решила пересмотреть взгляды на свои продукты, и отказалась от продажи ряда популярных продуктов — iWork, iLife и, конечно же, OS X. Такой шаг, скорее всего, должен поднять уровень использования этими продуктами, т.е. увеличить количество пользователей. Монетизация же только вокруг облачных сервисов iCloud, iTunes Match, магазина приложений App Store, магазина музыки и фильмов iTunes, магазина книг iBooks Store, а также ряда других проектов (к примеру, такие как Final Cut и Aperture).

После того, как было объявлено о том, что iWork стал бесплатным, многие пользователи более старых версий пакета обнаружили, что App Store с радостью готов обновить его до актуальной, последней версии, даже в том случае, если изначально iWork не был куплен (тут я умалчиваю, каким образом он мог достался). При попытке обновить приложения появляется сообщение о том, что они будут добавлены к учетной записи пользователя. Тем самым ваши не совсем легальные копии продукта становятся вполне себе официальными. Многие заговорили о багах в системе обновления и прочем, но мне кажется, что Apple в данном случае все об этом прекрасно знала (кейс как никак весьма тривиальный) и намеренно оставила возможность обновления.

Про покупку Android-фигурки

Не так давно начал присматриваться к коллекционным Android-фигуркам, и вот на днях казал одну из таких себе. Воспользовался услугами этого сайта. Выбрал фигурку из набора Set 3 (цена — 300 рублей за шт.). Из представленных мне больше всего понравился бильярдист, но к сожалению, выбрать конкретную фигурку при заказе нельзя, т.к. они запакованы в непрозрачную упаковку. Доставили уже на следующий день после заказа. В итоге мне достался вот такой робот в стиле гориллы:

android-doll

А вот наш Android-разработчик фигурку не оценил, сказав, что вещь полностью бесполезная 🙂 А по мне так, хоть и мелочь, но весьма забавная.

Про то, как достать фразы из qaanswers.ru

Сегодня в чат скинули ссылку на сайт http://qaanswers.ru/, который каждый раз выдает забавную фразу из жизни QA-инженера, или как их там правильно называть?

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

Сколько всего фраз хранится в базе – я не знаю. Набросал простейший скрипт, который дергает qwe.php 300 раз (думаю, выборка более, чем достаточная). Получив список фраз, я прогнал их через скрипт, который ищет совпадение строк и удаляет дубликаты. Таким образом, в итоге я получил чуть более 100 уникальных фраз.

Вот они:

Читать далее «Про то, как достать фразы из qaanswers.ru»

Ребята дайте мне тему письма

Буквально пару часов назад получил от Microsoft рассылку со странным названием «ребята дайте мне тему письма» 🙂 Похоже, что тему письма так ни кто и не дал. Пришлось запускать рассылку в том виде, что была. ребята дайте мне тему письма