Есть параметр GET($id) (числа)
Мне нужно составить следующий запрос:
Выбрать из таблицы spec_remont по id и потом в таблице user_personalнайти строки, где user_personal.category = spec_remont.name
Как это сделать одним запросом?))) по отдельности знаю как, а вот со сложными запросами проблемка...
двойной запрос
Re: двойной запрос
Код: Выделить всё
select user_personal.* from user_personal
left join spec_remont on spec_remont.name = user_personal.category
where user_personal.id = :id
Re: двойной запрос
так не работает(
Re: двойной запрос
Дело в том, что этот проект не на yii....
Вот модель:
Вот модель:
Код: Выделить всё
public static function getWork($id){
// Соединение с БД
$db = Db::getConnection();
/
$sql = 'select user_personal.* from user_personal
left join spec_remont on spec_remont.name = user_personal.category
where user_personal.id = :id';
// Используется подготовленный запрос
$result = $db->prepare($sql);
$result->bindParam(':id', $id, PDO::PARAM_INT);
// Указываем, что хотим получить данные в виде массива
$result->setFetchMode(PDO::FETCH_ASSOC);
// Выполнение коменды
$result->execute();
// Получение и возврат результатов
$i = 0;
$productsList = array();
while ($row = $result->fetch()) {
$productsList[$i]['id'] = $row['id'];
$productsList[$i]['category'] = $row['category'];
$productsList[$i]['name'] = $row['name'];
$productsList[$i]['resume'] = $row['resume'];
$i++;
}
return $productsList;
}
Re: двойной запрос
а) тогда зачем вы его постите в разделе yii?
б) я вам sql-запрос дал. yii не редактирует результаты sql-запросов.
проверьте результат работы запроса напрямую в базе. потом разбирайтесь конкретно с вашей либой.Artikk писал(а): ↑2017.06.26, 11:37 Вот модель:Код: Выделить всё
public static function getWork($id){ // Соединение с БД $db = Db::getConnection(); / $sql = 'select user_personal.* from user_personal left join spec_remont on spec_remont.name = user_personal.category where user_personal.id = :id'; // Используется подготовленный запрос $result = $db->prepare($sql); $result->bindParam(':id', $id, PDO::PARAM_INT); // Указываем, что хотим получить данные в виде массива $result->setFetchMode(PDO::FETCH_ASSOC); // Выполнение коменды $result->execute(); // Получение и возврат результатов $i = 0; $productsList = array(); while ($row = $result->fetch()) { $productsList[$i]['id'] = $row['id']; $productsList[$i]['category'] = $row['category']; $productsList[$i]['name'] = $row['name']; $productsList[$i]['resume'] = $row['resume']; $i++; } return $productsList; }