Написать письмо   
 
logo
 
Snippy
Сборник
примеров кода
В MS SQL отсутствует LIMIT в SELECT'е. Это поразительно и глупо, но это так. И после MySQL это невероятно раздражает. Поэтому было найдено решение проблемы. Сравнительно медленное, но зато работающее не только в новых версиях MS SQL (где есть row_number(), облегчающий жизнь). Итак, для того, чтобы к примеру сделать запрос аналогичный LIMIT 10,20 в MS SQL надо написать:
Читать дальше...


Предположим есть таблица с сохраненным полным XML документом в одном столбце и необходимо извлечь конкретный элемент для отображения, сортировки, проч. Хранимая процедура приведенная ниже, сделает эту работу. Необходимо выставить log_bin_trust_routine_creators в единицу: SET GLOBAL log_bin_trust_routine_creators = 1;
Читать дальше...


Этот пример конвертирует SQL из oracle, mysql, mssql, sqllite в ansi sql для избежания проблем совместимости на различных платформах
Читать дальше...


У вас есть набор многих ресурсов и вам необходимо знать какие из этих ресурсов доступны на нужный период времени, но mySQL не поддерживает sub-selection :( Вот как это можно сделать одним запросом:
Читать дальше...


Пригодится для выборки из базы списка людей у кого скоро будет день рождения.
Читать дальше...


Для выборки случайного ряда из таблицы можно воспользоваться запросом: SELECT * FROM table ORDER BY RAND() LIMIT 1; Однако для лучшей производительности при большом количестве рядов и наличии первичного индекса по полю id который идет БЕЗ ПРОПУСКОВ, в целях оптимизации производительности лучше воспользоваться двумя выборками с генерацией случайного числа на стороне PHP скрипта:
Читать дальше...


Бывают ситуации когда возникает необходимость обновить ряд с указанным ID, либо при отсутствии этого ID, вставить соответствующую ему запись. Таким образом нужно проверить есть ли в таблице запись с нужным ID через SELECT, если есть то выполнить UPDATE, иначе вставить ряд с помощью INSERT. Но есть более оптимальный путь, это использование в запросе вставки ON DUPLICATE KEY UPDATE. Что делает приведенный запрос? Запрос говорит следующее: вставить новый ряд, НО если ряд с указанным ID уже существует, то просто обновить в нем поле column. Следует учесть, что ID должен быть первичным или уникальным ключом!
Читать дальше...


Например, почему не работает такой запрос: SELECT * FROM tableName WHERE charFieldName LIKE "%\\%" - выбрать из таблицы tableName ряды в которых поле charFieldName содержит обратный слэш (\). При этом сам обратный слэш в запросе экранирован. Ответ: Потому что запрос неправильно записан. Чтобы выполнить поиск символа '\', его следует указать как '\\\\'. Причиной такой записи является то, что обратные слэши удаляются дважды: сначала синтаксическим анализатором, а потом - при выполнении сравнения с шаблоном, таким образом остается только один обратный слеш, который и будет обрабатываться.
Читать дальше...


Довольно неплохой класс (но не лучший ;) ..) упращающий доступ к базам данных SQL Server.
Читать дальше...


Довольно неплохой класс (но не лучший ;) ..) упращающий доступ к базам данных SQL Server.Автор: Mulish Mehdi
Читать дальше...


Создает условия для простого поискового SQL запроса, основанного на LIKE и REGEXP.
Поисковая фраза и данные в таблице БД д.б. в кодировке UTF-8!

LIKE используется для оптимизации скорости (и стоит в условии первым!),
REGEXP -- для точного поиска целых вхождений слов и чисел.

Синтаксис и примеры поискового запроса:
"квантов* механик*", "сервер 3.4GHz 1024Mb", "смысл* жизни" -- ищутся вхождения всех слов (логическое "И")
"квантов* | механик*" -- ищутся вхождения любого найденного (логическое "ИЛИ")
Необязательный символ "*" заменяет ноль или более букв и может стоять только в конце слова!
В начале или в середине слова звёздочка стоять не может!
Регистр слов при поиске не учитывается!
Читать дальше...


Эта функция используется для фильтрации вводимых пользователем данных, перед их использованием в SQL-запросах, для предотвращения SQL-инъекций.
Функция работает только с пятой версией PHP.
Читать дальше...


Функция создает дамп базы данных MySQL в формате SQL.
Читать дальше...



Простенький скрипт демонстрирующий как можно сделать импортировать sql-дамп в базу данных.
Читать дальше...