Приднестровская поддержка XOOPS
Информационные функции:
□ VERSION() выводит информацию о версии сервера MySQL:
SELECT VERSION();
/* Выведет: 5.1.40-community */
□ USER() позволяет узнать имя пользователя и имя хоста текущего пользователя:
SELECT USER();
/* Выведет: root@localhost */
□ CURRENT_USER() выдает имя пользователя и имя хоста текущего пользователя в сессии:
SELECT CURRENT_USER();
/* Выведет: root@localhost */
□ DATABASE() возвращает название текущей базы данных:
USE tests;
SELECT DATABASE();
/* Выведет: tests */
□ CONNECTION_ID() возвращает идентификатор соединения:
SELECT CONNECTION_ID();
/* Выведет: 1 */
□ DEFAULT(<Имя поля>) позволяет узнать значение по умолчанию для указанного поля:
USE tests;
CREATE TABLE `new_table` (
`id` INT AUTO_INCREMENT,
`count` INT DEFAULT 25,
PRIMARY KEY(`id`)
) ENGINE=MyISAM;
INSERT INTO `new_table` VALUES(NULL, 50);
SELECT DEFAULT(`count`) FROM `new_table` LIMIT 1;
/* Выведет: 25 */
□ LAST_INSERT_ID() служит для определения последнего автоматически сгенерированного значения для поля с атрибутом AUTO_INCREMENT. Значение возвращается только в том случае, если перед вызовом функции было сгенерировано новое значение:
INSERT INTO `new_table` VALUES(NULL, 80);
SELECT LAST_INSERT_ID();
/* Выведет: 2 */
Вывести последнюю добавленную запись можно следующими способами:
INSERT INTO `new_table` VALUES(NULL, 30);
SELECT `count` FROM `new_table` WHERE `id` = LAST_INSERT_ID();
/* Выведет: 30 */
INSERT INTO `new_table` VALUES(NULL, 90);
SELECT `count` FROM `new_table` WHERE `id` IS NULL;
/* Выведет: 90 */
□ FOUND_ROWS() позволяет узнать количество строк, которое возвратил бы оператор SELECT без инструкции LIMIT.
Чтобы получить значение, необходимо в операторе SELECT указать опцию
SQL_CALC_FOUND_ROWS:
INSERT INTO `new_table` VALUES(NULL, 6), (NULL, 70), (NULL, 50);
SELECT COUNT(*) FROM `new_table`;
/* Выведет: 7 */
SELECT SQL_CALC_FOUND_ROWS `count` FROM `new_table` LIMIT 0, 3;
/* Выведет три записи: 50, 80, 30 */
SELECT FOUND_ROWS();
/* Выведет: 7 */
□ BENCHMARK(<Число повторений>, <SQL-запрос>) выполняет SQL-запрос заданное количество раз. Функция всегда возвращает значение 0. Используется для определения быстродействия SQL-запроса:
SELECT BENCHMARK(1000000, MD5('строка'));
/* Выведет: 0
1 row in set (2.89 sec) */
Отправитель | Нити |
---|
1 пользователь(ей) активно (1 пользователь(ей) просматривают Инструкции)
Участников: 0 Гостей: 1 далее... |