Еще вопросы/ответы на собеседовании по MySQL (часть 2)
2013-06-19 01:06:00
... , посвященного вопросам на
собеседовании для программистов. Ответы ...
+ развернуть текст сохранённая копия
Продолжаю размещать переводы с англоязычного сайта www.techinterviews.com, посвященного вопросам на собеседовании для программистов. Ответы приведены такие же как на исходном сайте.
Что значит флаг –i-am-a-dummy при старте MySQL ?
Он заставляет отвергать команды UPDATE и DELETE когда выражение WHERE в них не наличествует. Таким образом не дает стереть все строки таблицы в случае неопытных или рассеяных программистов.
При исполнении команды DELETE я получил ошибку ограничения внешнего ключа. Что мне делать ?
Это значит, что те данные, которые вы пытаетесь удалить все еще остаются "живыми" в другой таблице.
Например, вы имеете две таблицы университеты и студенты. В таблице студенты есть ссылка на поле ID таблицы университеты. Которое значит внешний ключ - связь между студентом и университетом в который он ходит.
Удаление из таблицы университеты может не удаться, если на удаляемую строку есть ссылки из таблицы студенты.
Правильное действие в таком случае сначала стереть те строки, которые ссылаются на университеты из таблицы со студентами, а потом уже стирать университеты.
Еще одним способом может считаться отключение проверки внешних ключей перед командой DELETE с последующим включением, когда удаление завершено.
Это делается так:
SET foreign_key_checks=0
Это может быть очень удобным и быстрым при массовом переносе данных из разных таблиц. Но в таких случаях нужно внимательно следить за целостностью данных (внешних ключей).
Иначе это приведет к ошибкам во время работы с БД и/или потерям данных.
Если ваши внешние ключи оформлены с выражением ON DELETE CASCADE, то данные в зависимых таблицах будут удалены автоматически.
Когда бы вы использовали ORDER BY в выражении DELETE ?
Тогда, когда вы не стираете по ID строки. Например в случае следующего запроса:
DELETE FROM techinterviews_com_questions ORDER BY timestamp LIMIT 1
Это удалит самый последний вопрос из добавленных в таблицу techinterviews_com_questions.
Как бы вы просмотрели все опреденные для заданной таблицы индексы ?
SHOW INDEX FROM techinterviews_questions
Как бы вы изменили тип колонки с VARCHAR(10) на VARCHAR(50) ?
ALTER TABLE techinterviews_questions CHANGE techinterviews_content techinterviews_CONTENT VARCHAR(50)
Как бы вы удалили колонку ?
ALTER TABLE techinterviews_answers DROP answer_user_id
Как бы вы изменили/перенесли таблицу на движок InnoDB ?
ALTER TABLE techinterviews_questions ENGINE innodb
Когда вы создали таблицу и потом запустили SHOW CREATE TABLE на ней. То вы увидите не дословно те же конструкции, которыми вы создавали ее. Что MySQL модифицировал автомтически в вашей, только что созданной таблице ?
- VARCHAR-ы с длинной менее 4-х символов становятся CHAR-ами
- CHAR-ы с длинной более 3 символов сьановятсяVARCHAR-ми
- NOT NULL добавляется к колонкам объявленным как PRIMARY KEYs
- Значения по умолчанию, такие как NULL специфицируются каждой колонке
Тэги:
sql,
вопрос,
собеседование
Еще вопросы/ответы на собеседовании по MySQL (часть 1)
2013-06-15 18:32:00
... , посвященного вопросам на
собеседовании для программистов. Ответы ...
+ развернуть текст сохранённая копия
Продолжаю размещать переводы с англоязычного сайта www.techinterviews.com, посвященного вопросам на собеседовании для программистов. Ответы приведены такие же как на исходном сайте.
Что такое DDL, DML and DCL?
Как вы видете существует большое разнообразие SQL комманд. Для удобства работы их можно разделить на 3 большие подгруппы.
Data Definition Language (DDL) это команды, которые имеют дело с схемами БД и описанием того как данные должны размещаться в БД.
Такие выражения языка как CREATE TABLE или ALTER TABLE принадлежат DDL.
Data manipulation language (DML) имеет дело с манипуляцией данными и включает наиболее общие выражения языка, такие как SELECT, INSERT, UPDATE и т.п.
Data Control Language (DCL) включает такие команды как GRANT, которые в основном касаются прав, разрешений и другого контроля над БД.
Как бы вы получили количество строк выдаваемых запросом ?
Запрос
SELECT COUNT (user_id) FROM users
вернет только количество user_id-ов.
Если значение колонки повторяется, как вы найдете уникальные значения ?
Использование DISTINCT в запросе вам поможет. Тогда запрос будет таким:
SELECT DISTINCT user_firstname FROM users;
Вы можете также найти количество уникальных значений в колонке таким запросом:
SELECT COUNT (DISTINCT user_firstname) FROM users;
Как вернуть сотню книг начиная с 25-ой ?
SELECT book_title FROM books LIMIT 25, 100
Первое значение команды LIMIT это смещение, а второе количество.
Вы написали поисковый движок, который возвращает, по 10 значений за раз, в то же время вам хочется узнать сколько строк всего. Как это вывести вашему пользователю ?
SELECT SQL_CALC_FOUND_ROWS page_title FROM web_pages LIMIT 1,10;
SELECT FOUND_ROWS();
Второй запрос (никогда не используйте в таком случае COUNT()) скажет вам как много результатов всего, так что вы можете показать фразу "Найдено 13,450,600 результатов, показаны 1-10"
Запомните, что FOUND_ROWS не обращает внимание на ваши LIMIT выражения и всегда возвращает полное число строк обработанных запросом.
Как бы вы написали запрос выборки всех команд выигравших 2, 4, 6 или 8 игр ?
SELECT team_name FROM teams WHERE team_won IN (2, 4, 6, 8)
Как бы вы получили всех пользователей у которых номер телефона NULL ?
SELECT user_name FROM users WHERE ISNULL(user_phonenumber)
Что значит следующий запрос: SELECT user_name, user_isp FROM users LEFT JOIN isps USING (user_id) ?
Он эквивалентен такому запросу: SELECT user_name, user_isp FROM users LEFT JOIN isps WHERE users.user_id=isps.user_id
Как узнать какой авто инкремент был использован при последнем INSERT-е ?
SELECT LAST_INSERT_ID()
- запрос вернет значение назначенное функции auto_increment. Помните, что вы не должны указывать имя таблицы.
А если вам надоело учиться, то покатайтесь со своими детьми на роликах. Здесь можно заказать детские ролики в Украине.
Тэги:
sql,
вопрос,
собеседование
Психологические тесты на собеседованиях
2013-06-13 02:25:15
... height="213" alt="
собеседование" align="right" ... подбору персонала на
собеседовании не ограничиваются ...
+ развернуть текст сохранённая копия
Многие специалисты по подбору персонала на собеседовании не ограничиваются стандартными вопросами, а используют специальные психологические тесты. К таким тестам лучше быть заранее готовыми, ну или хотя бы примерно представлять, что это такое, чтобы не растеряться в ответственный момент. Психологические тесты при приеме на работу бывают устными и письменными. Письменные тесты предпочитают использовать на начальном этапе собеседований, когда кандидатов на должность еще много, и нужно провести некий первоначальный отбор. Письменные тесты бывают следующие: интеллектуальные (вроде теста Айзенка), личностные, квалификационные и простейшие. Интеллектуальные тесты призваны показать общий уровень интеллекта кандидата и его способности к логическому мышлению. Такие тесты обычно состоят из числовых, пространственных и словесных заданий. Личностные тесты важны для конкретного вида деятельности, там нет правильных или неправильных ответов.
Квалификационные тесты помогают оценить уровень профессиональных знаний и навыков кандидата.
Далее
Тэги:
собеседование,
тест
Самые популярные задачи на собеседованиях в крупных компаниях мира
2013-06-01 21:32:07
... популярные задачи на
собеседованиях в крупных ... популярные задачи на
собеседованиях в крупных ...
+ развернуть текст сохранённая копия
1. Сколько весит весь лед на хоккейном катке? (Google)
2. Сколько всего машин в США? (Microsoft)
3. У вас три корзины с фруктами. В одной из них — только яблоки, в другой — только апельсины, наконец, в третьей — и яблоки, и апельсины. Вы не видите, какие фрукты внутри корзин. На каждой корзине есть хорошо заметный ярлык, но информация на нем неверна. Вам разрешено с закрытыми глазами вынуть из одной корзины один фрукт и потом рассмотреть его. Как можно определить, что в каждой из корзин? (Apple)
4. Вы — капитан пиратского судна и ваша команда собирается голосовать, как разделить награбленное золото. Если с вами будет согласно меньше чем половина пиратов, вы умрёте. Как вы поделите золото, так, чтобы получить хорошую часть добычи, но всё же остаться в живых? (Amazon)
5. Как вы оцените вес слона без использования компьютера? (Microsoft)
6. Вы решили выступить в качестве работодателя и наняли сотрудника на 7 дней для выполнения какой-либо работы. У вас есть брусок из золота, который условно разделён на 7 равных частей. И каждый вечер вы должны платить своему работнику одной частью от этого бруска. Но разломить брусок на 7 частей вы не можете, разрешено сделать только 2 разлома. Как же вы будете расплачиваться с рабочим? (Apple)
7. Вам надо проверить, правильно ли записан и записан ли вообще ваш телефон у вашего приятеля Димы. Но вы не можете его спросить об этом прямо. Вам надо написать вопрос на бумажке и отдать Маше, которая отнесет ее Диме, а потом принесет обратно ответ от него. Что вы должны написать на бумажке (прямой вопрос нельзя) так, чтобы Дима смог понять сообщение, а Маша не смогла бы узнать ваш номер телефона? (Yandex)
8. Сколько настройщиков пианино во всём мире? (Google)
9. Разработайте план эвакуации из Сан-Франциско. (Facebook)
10. Представьте себе крутящийся диск, подобный пластинке на старом проигрывателе. Одна половина диска выкрашена в белый цвет, а другая в чёрный. В вашем распоряжении бесконечное количество датчиков, определяющих текущий цвет. Сколько вам потребуется датчиков, чтобы определить в какую сторону крутится диск? Где вы расположите датчики? (Google)
11. Почему крышки люков круглые? (IBM)
12. У вас есть пять баночек с пилюлями. В одной из баночек все пилюли «испорчены». Это можно определить только по весу. Все «нормальные» пилюли весят по 10 граммов, а «испорченные» — 9 граммов. У вас есть весы, и можно сделать только одно взвешивание. Как можно определить, в какой из баночек «испорченные» пилюли? (Capital One)
13. Почему, когда вы в гостинице открываете кран с горячей водой, из него сразу течет горячая вода, а в жилых домах сначала течет теплая? (SAIC)
14. За сколько денег вы помоете все окна в Сиэтле? (Facebook)
15. Есть страна, в которой родители хотят только мальчиков. Если рождается девочка, они продолжают заводить детей, если мальчик – останавливаются. Каково соотношение мальчиков и девочек в стране? (Google)
topblogpost.ru
Тэги:
вопрос,
задача,
компмании,
собеседование
Продажи смартфонов впервые превысили продажи сотовых
2013-05-26 22:31:00
+ развернуть текст сохранённая копия
Коммуникаторы впервые за всё время своего существования смогли обойти по числу продаж обычные мобильные телефоны.Аналитики из IDC представили свежую статистику по поводу продаж на мировом рынке мобильных устройств в первом квартале этого года. По их информации, отмечается заметный прыжок вперёд лидирующих производителей смартфонов из Китая и Южной Кореи и небольшой импульс со стороны Apple. Суммарно мобильная арена увеличилась на четыре процента в годовом исчислении, сумев предложить потребителям около 420 млн устройств — обычных телефонов и смартфонов.В этом самым интересным и занимательным является то, что за всю историю смартфоны первый раз смогли обойти мобильные телефоны по числу продаж: коммуникаторы заняли 51,6% рынка. Разумеется, что смартфон — весьма туманный термин, поэтому к такому заявлению стоит отнестись со здравой долей скептицизма. Можно предположить, что дебют смартфона как нового класса произошел с выходом в мир iPhone в 2007 году. Но ясно одно: людей уже не интересуют только звонки и СМС по мобильному аппарату, теперь всё определяет доступ к сети Интернет.Опишем текущее положение вещей среди «умнофонов». «Самсунг» лидирует со своими 32,7% на рынке, тем самым опередив Apple c их 17,3% практически в два раза. Дальше идут LG, Huawei и ZTE — эти фирмы занимают почти равные позиции: соответственно 4,8%; 4,6%; 4,2%. Другие производители коммуникаторов имеют треть рынка — 36,4%.Компания LG стала победителем по темпам роста, ведь она смогла больше чем в два раза увеличить поставки своих смартфонов. Далее идёт Huawei, которая реализовала почти вдвое больше аппаратов, чем годом раньше. Samsung усилила свои позиции в объёме 2/3 от прошлого показателя, позади всех Apple — у них отмечается скромный рост в 6,6%.«Яблочники», несмотря на свои скромные результаты, до сих пор хорошо выезжают благодаря iPhone-франшизе, торгуя одним топовым смартфоном и двумя из прошлых поколений. Apple получила 9,5 млрд $ операционной прибыли за первый квартал этого года, а компания Samsung себе в карман положила несколько меньше — 7,9 млрд. $, предлагая потребителю широкий ассортимент коммуникаторов.В своё время Nokia была лидером в мобильном мире, но теперь она не смогла войти даже в пятёрку топовых производителей смартфонов (та же ситуация отмечается у некогда сильных HTC и BlackBerry), вместе с тем в рейтинге вендоров мобильных аппаратов она заняла почётное второе место, лидером же в этой отрасли стала фирма Samsung. В течение года финский гигант снизил долю своего влияния на рынке с 20,6 до 14,8%, а вот корейская корпорация, наоборот, смогла укрепиться — с 23,3 до 27,5%.
Тэги:
вопрос,
мобильный,
новость,
собеседование,
технология,
устройство
Страницы:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ...