@hooligan377

Составить запрос к mysql и полученный результат использовать в цикле?

Всем привет, разбираюсь с JOIN, нужно полученный результат отправить в цикл.

Составляю запрос:
SELECT * FROM chat INNER JOIN id.profile ON(uid) ORDER BY `time` DESC LIMIT ?,?;


А вот как мне с ним работать в цикле не понимаю.. Объясните пожалуйста, как мне получить логин пользователя сравнимый с uid из чата с id пользователя?
  • Вопрос задан
  • 69 просмотров
Решения вопроса 2
@Vitsliputsli
Вот пример открытия курсора и чтения из него циклом:
DELIMITER $$
 
CREATE PROCEDURE build_email_list (INOUT email_list varchar(4000))
BEGIN
 
 DECLARE v_finished INTEGER DEFAULT 0;
        DECLARE v_email varchar(100) DEFAULT "";
 
 -- declare cursor for employee email
 DEClARE email_cursor CURSOR FOR 
 SELECT email FROM employees;
 
 -- declare NOT FOUND handler
 DECLARE CONTINUE HANDLER 
        FOR NOT FOUND SET v_finished = 1;
 
 OPEN email_cursor;
 
 get_email: LOOP
 
 FETCH email_cursor INTO v_email;
 
 IF v_finished = 1 THEN 
 LEAVE get_email;
 END IF;
 
 -- build email list
 SET email_list = CONCAT(v_email,";",email_list);
 
 END LOOP get_email;
 
 CLOSE email_cursor;
 
END$$
 
DELIMITER ;

Подробнее в документации.
Ответ написан
Комментировать
@hooligan377 Автор вопроса
Проблема решена

SELECT * FROM `chat` INNER JOIN `profile` ON `chat`.`uid` = `profile`.`id` LIMIT 0,5
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы