2013-05-02 3 views
0

Создайте запрос, чтобы отобразить имя_каталога, Part_ID, Model_Name, Manufacturer_Name и OnHand для всех шин Passenger Type. Сортировка списка по имени производителя.создание запроса mysql без дубликатов

Это то, что я положил:

SELECT 
    STORELOCATION.STORE_NAME, 
    TIRES.PART_ID, 
    MODEL_NAME, 
    MANUFACTURERS.MANUFACTURER_NAME, 
    INVENTORY.ONHAND 
FROM 
    STORELOCATION, TIRES, MANUFACTURERS, INVENTORY 
WHERE 
    TIRE_TYPE = 'Passenger' 
ORDER BY MANUFACTURER_NAME; 

я получил как 4100 записей. Мне не нужны дубликаты. к которой я получил

спасибо всем, кто может помочь мне Крейг

+---------+--------------------+----------------+------------+-------------+ 
| PART_ID | MODEL_NAME   | MANUFACTURERID | UNIT_PRICE | TIRE_TYPE | 
+---------+--------------------+----------------+------------+-------------+ 
| C424P | Kestral   | M3    |  45.99 | Passenger | 
| C434P | Peregrine   | M3    |  49.99 | Passenger | 
| C435T | Eagle    | M3    |  56.99 | Truck  | 
| C475X | Hawk    | M3    |  63.99 | Performance | 
| G738P | Cross-Country  | M1    |  27.99 | Passenger | 
| G812T | All-Terrain  | M1    |  39.99 | Truck  | 
| G814T | Expedition   | M1    |  47.99 | Truck  | 
| G868P | Urban    | M1    |  34.99 | Passenger | 
| G898X | Performance-Radial | M1    |  56.99 | Performance | 
| M225P | Symmetry   | M2    |  39.99 | Passenger | 
| M235P | Harmony   | M2    |  49.99 | Passenger | 
| M325X | Energy    | M2    |  54.99 | Performance | 
| M545X | Grand-Prix   | M2    |  89.99 | Performance | 
| Y320P | Touring   | M4    |  19.99 | Passenger | 
| Y430P | Assurance   | M4    |  29.99 | Passenger | 
| Y435P | Freedom   | M4    |  24.99 | Passenger | 
| Y440T | Cargo    | M4    |  29.99 | Truck  | 
| Y450T | Heavy-Duty   | M4    |  24.99 | Truck  | 
+---------+--------------------+----------------+------------+-------------+ 
18 rows in set (0.00 sec) 

Query OK, 0 rows affected (0.06 sec) 

Query OK, 4 rows affected (0.03 sec) 
Records: 4 Duplicates: 0 Warnings: 0 

+----------------+-------------------+-------------------+------------------+ 
| MANUFACTURERID | MANUFACTURER_NAME | MANUFACTURER_CITY | MANUFACTURER_REP | 
+----------------+-------------------+-------------------+------------------+ 
| M1    | GoodTread   | Akron    | Ben    | 
| M2    | Michelle   | Columbus   | Sarah   | 
| M3    | ChickenCoop  | Findlay   | George   | 
| M4    | Yomama   | Toledo   | Steve   | 
+----------------+-------------------+-------------------+------------------+ 
4 rows in set (0.00 sec) 

Query OK, 0 rows affected (0.07 sec) 

Query OK, 3 rows affected (0.02 sec) 
Records: 3 Duplicates: 0 Warnings: 0 

+----------+-------------+-----------+---------------+ 
| STORE_ID | STORE_NAME | LOCATION | STORE_MANAGER | 
+----------+-------------+-----------+---------------+ 
| DT  | LUCKY ONE | Downtown | Robert  | 
| ES  | LUCKY TWO | Eastside | Megan   | 
| NS  | LUCKY THREE | Northside | Harold  | 
+----------+-------------+-----------+---------------+ 
3 rows in set (0.00 sec) 

Query OK, 0 rows affected (0.13 sec) 

+----------+--------------+------+-----+---------+-------+ 
| Field | Type   | Null | Key | Default | Extra | 
+----------+--------------+------+-----+---------+-------+ 
| PART_ID | char(5)  | NO | PRI |   |  | 
| STORE_ID | char(3)  | NO | PRI |   |  | 
| ONHAND | decimal(5,0) | YES |  | NULL |  | 
+----------+--------------+------+-----+---------+-------+ 
+0

@ByronWhitlock Это дубликат их предыдущего вопроса. – Taryn

+0

Да, это синие ноги ... я добавил структуру таблицы к этому –

+2

@CraigOlander Вы должны добавить его в свой первоначальный вопрос, не публикуйте новый – Taryn

ответ

0

Если у вас есть фактические дубликаты вы можете изменить «выбрать» до «выберите отчетливый», и вы сделали; но у вас есть большая проблема; ваши «дубликаты» на самом деле не дублируются

В принципе, единственным ограничением, которое вы дали, было то, что тип шины должен быть «пассажиром». Как эти шины относятся, например, к названиям производителей? Если ограничение не задано (например, сейчас), оно просто возвращает все возможные комбинации. Например, если вы хотите связать таблицу шины к таблице шины на основе PartID, вы можете изменить где заявление

WHERE TIRE_TYPE = 'Passenger' AND TIRES.PART_ID = INVENTORY.PART_ID 

я могу иметь неправильные имена баз данных, но я думаю, вы понимаете, где проблему , Чтобы решить проблему «дубликатов», вам нужно определить отношение между различными таблицами в инструкции while.

Смежные вопросы