как запустить встроенный запрос в mysql

Я работаю с TSP (проблема коммивояжёров) Решение в mysql.

для этого мы собираемся разработать процедуру, в которой я хочу выполнить следующий запрос

-- variable coming from java

    CREATE PROCEDURE solve_tsp(
    inout ids varchar(21845);
    )
    begin
    declare ret_ids varchar(21845);
    -- some code

    while length(ids) > 0 do

    -- some assignment 
        SELECT to_id,distance into @l_tmp_id,@l_distance FROM mst_distance_matrix WHERE  from_id =',@l_tmp_id,' AND 
to_id IN (ids) -- ids is variable contains comma delimited string.
order by distance desc limit 1

    -- concat value of to_id in ret_ids variable and then remove from ids variable   

    end while;

    select ret_ids;
    end;

person Darshan Patel    schedule 13.01.2014    source источник


Ответы (1)


Вы должны посмотреть здесь.

http://dev.mysql.com/doc/refman/5.0/en/sql-syntax-prepared-statements.html

Пример:

PREPARE stmt1 FROM 'SELECT SQRT(POW(?,2) + POW(?,2)) AS hypotenuse';
SET @a = 3;
SET @b = 4;
EXECUTE stmt1 USING @a, @b;
DEALLOCATE PREPARE stmt1;

Смотрите также:

Динамический запрос в MySQL

person peter.petrov    schedule 13.01.2014