Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[98.82.140.17] |
|
Данный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных - обсуждаем в разделе "Базы данных: общие вопросы". Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ. |
Сообщ.
#1
,
|
|
|
Задачка. MySQL v5.7x.
Без процедур и функций, одним запросом DQL\DML (можно переменные) заполнить таблицу данными матрицы n x m типа ТАБЛИЦА( y , x , value ) , где y и x - всевозможные координаты ячеек (нужно расчертить игральную доску), а value - произвольное значение. Мои комментарии в скрипте: SET @`height` := 10 , @`width` := 10 , @`i` := 0 ; DROP TEMPORARY TABLE IF EXISTS `t_field` ; CREATE TEMPORARY TABLE IF NOT EXISTS `t_field`( `id` BIGINT UNSIGNED NOT null COMMENT 'идентификатор' , `y` SMALLINT UNSIGNED NOT null COMMENT 'y' , `x` SMALLINT UNSIGNED NOT null COMMENT 'x' , UNIQUE( `y` , `x` ) , PRIMARY KEY( `id` ) ) COMMENT 'таблица' IGNORE AS SELECT cast( 1 + @`i` % @`height` AS UNSIGNED ) AS `y` , cast( 1 + ( @`i` / @`height` ) % @`width` AS UNSIGNED ) AS `x` , ( @`i` := @`i` + 1 ) AS `id` -- нужен скрытый идентификатор записи, как в Firebird FROM -- нужен генератор записей, как в PgSql `mysql`.`user` AS `u1` , `mysql`.`user` AS `u2` , `mysql`.`user` AS `u3` , `mysql`.`user` AS `u4` , `mysql`.`user` AS `u5` , `mysql`.`user` AS `u6` , `mysql`.`user` AS `u7` GROUP BY 1 , 2 ; SELECT * FROM `t_field` ; |
Сообщ.
#2
,
|
|
|
mysql.user так себе генератор записей... лучше взять для этих целей mysql.help_relation
Да, кстати... а вопрос-то какой? |