Я получаю номер строки через инструкцию SQL в sqlyog, как следует;Номер строки с помощью хранимой процедуры
SET @v_num:=0;
SET @v_type := 0;
SELECT pd.event_id,
@v_num := IF(@v_type = pd.event_id, @v_num + 1, 1) AS row_number,
@v_type := pd.event_id AS dummy
,CONCAT(va.id,',',va.`firstname`,',',va.`lastname`,',',IFNULL(va.`picture`,'')) user_info
FROM p_details pd
INNER JOIN vw_all va ON pd.pass_for = va.`user_type` AND pd.attendee_id = va.`id` AND va.`pass_id` = pd.id
WHERE CURRENT_DATE() BETWEEN pd.start_date AND pd.end_date
AND pd.event_id IN (9,50)
ORDER BY pd.event_id,pd.last_date_time DESC
Как вы знаете, мы не можем использовать @v и "@v_num: = IF (@v_type = pd.event_id, @v_num + 1, 1)" в хранимой процедуре. Поэтому я не могу получить номер строки с помощью хранимой процедуры mysql.
Любые идеи?
Теперь работает нормально, но его повторять тот же номер строки (только повторяющиеся строки номер 1) и его показ только строки номер 1 дважды против каждой event_id –
К сожалению, я не могу» т воспроизвести это. Я создал небольшой образец, основанный на вашем коде, и он работает, как ожидалось. - Но это что-то, что изменилось с использованием вашего кода в хранимом процессе? - Наверное, нет. – PhilS
Ничего не изменилось. –