SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 18.04.2016 18:57:07

fireman
Участник
Зарегистрирован: 18.04.2016
Сообщений: 1

Выборка данных из 3ех таблиц.

Доброе время суток, подскажите пожалуйста как правильно выбрать данные из трех таблиц.
Таблица1. id,name,price,user,status,tovarid
Таблица.2 userid,name,money,status
Таблица.3 id,name,image,type

Где поле tovarid(Таблица1)=id(таблица2) и user(Таблица1)=userid(Таблица2)
Сделал запрос

SELECT * FROM `shop`,`users`,`tovar` WHERE  user=userid ORDER BY price DESC LIMIT 15

Выводит данные не корректно, видимо из-за того, что название полей в таблицах одинаковые, а значения разные.

Неактивен

 

#2 18.04.2016 21:03:01

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Выборка данных из 3ех таблиц.

Непонятно, как магазины прицеплять к товарам и наоборот. Через какие поля связывание производится?
С другой стороны, у Вас товар ссылается на пользователя или наоборот?
Вывести можно через связывание таблиц, как-то так (не уверен, что правильно поля указаны в JOIN)

SELECT
  u.*,t.*
FROM
  `users` u
  JOIN `tovar` t ON u.user = t.id
ORDER BY
  t.price DESC
LIMIT 15

Если не получается, то создайте на sqlfiidle тестовый пример, где есть все три таблички с тестовыми данными - и приведите тот результат, который Вы хотите получить.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson