У меня есть три таблицы,Использование оператора выбора в рельсах запросов
продуктов имеет 3 колонки, позволяют им быть product_id, retailer_id, ID
product_urls имеет 2 колонки, url_id, ID
URLS имеет 2 столбца, url_id, absolute_url
Все ассоциации были выполнены в моделях.
Продукты & product_urls соединяются на ид = ID (Продактс "имеет много" отношения с product_urls)
product_urls & URLs соединяются на url_id = ид (product_urls "относится к" отношения с URLs)
продукты & URL имеет отношение «имеет много отношений»
Я пытаюсь написать запрос, который выбирает столбец A, B, C из таблицы 1 и X из таблицы3.
Мой запрос:
- Product.joins (: URLS) .select (: product_id,: retailer_id,: absolute_url) .где (: идентификатор => 100,: URLS => {: url_id = > 100})
Я могу выполнить запрос без каких-либо ошибок, но я не могу получить данные для X., когда я проверяю для SQL запроса это
- выберите products.product_id , products.retailer_id, products.absolute_url ........ is exec пространяется.
Пожалуйста, помогите мне, как извлечь значение из URL-адресов?
Попытка 'Table1.joins (: Таблица3) .Select ("А, В, С, table3.X"), где (.: D => 100,: Таблица3 = > {: Y => 100}) ' – Pavan
Привет, Спасибо за ответ. Но, когда я использую это, это ошибка, поскольку столбец неоднозначен –
Как вы используете? Также разместите реальные имена таблиц и столбцов, чтобы было легко ответить. – Pavan