MySQL создает столбцы с циклом в операторе выбора - PullRequest
2 голосов
/ 14 января 2012

В MySQL у меня есть функция, которая принимает числовой аргумент и выплевывает подмножество результатов из другой таблицы на основе этого числа.Реализация в настоящее время выглядит следующим образом:

SELECT 
  id,
  date,
  function(do stuff with value 1) as t1,
  function(do stuff with value 2) as t2,
  function(do stuff with value 3) as t3,
  ...
  function(do stuff with value N) as tN
FROM table

Можете ли вы использовать цикл в операторе выбора (или даже процедуру, которая создает таблицу), так что выше становится:

SELECT
  id,
  date,
  LOOP x = 1 through N
    function(do stuff with value x) as tx,
  END LOOP
FROM table

Спасибо.

1 Ответ

3 голосов
/ 14 января 2012

да, вы можете ... взглянуть на DynamicSQL ..

Вот один образец

и еще один пример

Как правило, вы строите строку, содержащую инструкцию SQL, которую хотите выполнить, затем готовите ее, затем выполняете ...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...