sql многостоловый запрос

Ваше промежуточное программное обеспечение в порядке, но вам нужно зарегистрировать промежуточное ПО Cors в глобальном стеке промежуточного программного обеспечения HTTP.

protected $middleware = [
    \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    \App\Http\Middleware\CorsMiddleware::class
];
0
задан Alberto Gimenez 15 January 2019 в 18:46
поделиться

3 ответа

Я думаю, что, поняв ваш вопрос, вы, вероятно, хотите познакомиться с объединениями таблиц MySQL.

Это широкая категория, слишком широкая для ответа здесь, поэтому, вероятно, лучше направить вас куда-нибудь, например, http://www.mysqltutorial.org/mysql-join/ , чтобы узнать, что они и как они используются.

С точки зрения вашего запроса, следующая поправка:

SELECT r.titulo 
 FROM `categorias` c 
INNER JOIN `recetas-categorias` rc ON rc.idcategoria= c.id
INNER JOIN `recetas` r ON r.idreceta = rc.idreceta
WHERE c.categoria="Internacional"

возвращает

+-------------+
| paella      |
|-------------|
| salchichas  |
+-------------+

... что вы пытаетесь достичь?

0
ответ дан Chris J 15 January 2019 в 18:46
поделиться

Для этой операции используйте соединение .

SELECT r.titulo 
 FROM recetas r 
JOIN recetas-categorias rc
ON r.idreceta = rc.idreceta  
JOIN categorias c
ON rc.idcategoria = c.id
AND c.categoria="Internacional"

или

SELECT r.titulo 
FROM recetas r,
     recetas-categorias rc,
     categorias c
WHERE r.idreceta = rc.idreceta  
AND rc.idcategoria = c.id
AND c.categoria="Internacional"
0
ответ дан Daniel Silveira 15 January 2019 в 18:46
поделиться

Вам необходимо узнать о «sql joins». Вот как вы объединяете эти 3 таблицы:

    select r.titulo
    from recetas r
    join recetas-categorias rc
        on rc.idreceta = r.idreceta
    join categorias c
        on c.id = rc.idcategoria
    where c.categoria = 'Internacional'
0
ответ дан Jon Ekiz 15 January 2019 в 18:46
поделиться
Другие вопросы по тегам:

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