Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.01.08;
Скачать: [xml.tar.bz2];

Вниз

Вопрос по SQL. Работа с несколькими таблицами.   Найти похожие ветки 

 
Majesto   (2005-12-19 17:50) [0]

Есть три таблицы:
product (product_id, product_sku, product_name)
orders (order_id, order_subtotal, order_status)
order_item(order_id, product_id, order_status)

Мне необходимо написать sql запрос чтобы в результате выбора в програме пределенного order_id выводилась таблица с полями
product_sku, product_name, order_status, order_subtotal

Я пробую написать запрос вида - SELECT product.product_sku, product.product_name, orders.order_status, orders.order_subtotal
FROM product, order_item, orders
WHERE product.product_id = order_item.product_id AND order_item.order_id = :order_id    - так вот в результате вмест дной строчки для определенного номера order_id я получаю несколько одинаковых.

Как сделать чтобы выводилась строчка без повторений? Пробовал различные объединения делать но ничего путного не получилось.

од дним значением order_id может сответствовать несколько значений product_id и других полей, но в данном случае каждая результирующая строчка так же повтряется по несколько раз.


 
Majesto   (2005-12-19 17:56) [1]

Сразу скажу чт бъединения типа UNION не подходят т.к. колчисетво полей в таблицах разное и параллельное соединение не нужно. Я привел не все поля а часть.


 
mfender ©   (2005-12-19 18:32) [2]

DISTINCT(<поле, повторяющиеся значения которого не должны выбираться>)


 
Majesto   (2005-12-19 19:10) [3]

SELECT DISTINCT product.product_sku, product.product_name, orders.order_status, orders.order_subtotal
FROM product, order_item, orders
WHERE product.product_id = order_item.product_id AND order_item.order_id = :order_id

DISTINCT ни к чему положительному не привдит. Я думаю тут проблема в фрмировании таблицы п этому запросу. Я все книги перерыл, так и не разобрался в чем ошибка.


 
Majesto   (2005-12-19 19:19) [4]

Т.е. получается что для каждого параметра SELECT -
1 -product.product_sku
2 - product.product_name
3- orders.order_status
4 - orders.order_subtotal
формируется строка в результате выполнения команды. Т.е. в результате получаются 4 строки с одинаковыми product_sku, product_name и различными комбинациями order_status, order_subtotal



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.01.08;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
14-1134536760
vajo
2005-12-14 08:06
2006.01.08
антивирусы


2-1135054933
Новенькая
2005-12-20 08:02
2006.01.08
SaveDialog


2-1133423104
worldmen
2005-12-01 10:45
2006.01.08
Передать данные в родительскую форму.


2-1135170842
kizam
2005-12-21 16:14
2006.01.08
компаненты для toolbar-a


2-1134977546
oleg777
2005-12-19 10:32
2006.01.08
Регистрация в MSSQL Server 2000





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский