Sie können nicht SELECT DISTINCT
, aber andere können es hilfreich finden. Für Sie ist die Antwort unter bearbeiten.
Stichwort DISTINCT
listet eindeutige Zeilen. Um mehr darüber zu erfahren, lesen Sie dies: http://www.w3schools.com/sql/sql_distinct.asp.
EDIT:
Jetzt habe ich das Problem sehen, habe ich nicht bemerkt, dass die Zahlen nicht früher passen. Das Schlüsselwort DISTINCT
hilft in diesem Fall nicht. JOIN
verbindet zuerst Shirt_Mes
Tabelle, aber es gibt zwei Datensätze, was bedeutet, dass es zwei Zeilen erzeugt. Next JOIN
verbindet Tabelle Pant_Mes
und Bedingung wählt auch zwei Datensätze aus dieser Tabelle. Jede Zeile von früher wird für diese zwei Datensätze erweitert. In diesem Fall erzeugt es 2 x 2 Zeilen.
Ich denke, es ist schlechte Tabellenschema. Sie können zwei Abfragen tun und die Ergebnisse in der Anwendungslogik kombinieren:
SELECT
CustBillPayment.CustomerId,
CustBillPayment.Customer_Name,
CustBillPayment.CustBill_Total,
CustBillPayment.CustBill_Paid,
CustBillPayment.CustBill_ReamingAmt,
CustBillPayment.Created_Date,
CustBillPayment.Delivery_Date,
CustBillPayment.Updated_Date,
Shirt_Mes.Shirt_Type,
Shirt_Mes.Shirt_Qty,
Shirt_Mes.Shirt_Price,
Shirt_Mes.Shirt_Total
FROM
CustBillPayment
JOIN Shirt_Mes ON CustBillPayment.CustomerId = Shirt_Mes.CustomerId
WHERE
CustBillPayment.CustomerId=17
und
SELECT
CustBillPayment.CustomerId,
CustBillPayment.Customer_Name,
CustBillPayment.CustBill_Total,
CustBillPayment.CustBill_Paid,
CustBillPayment.CustBill_ReamingAmt,
CustBillPayment.Created_Date,
CustBillPayment.Delivery_Date,
CustBillPayment.Updated_Date,
Pant_Mes.Pant_Type,
Pant_Mes.Pant_QTY,
Pant_Mes.Pant_Total,
Pant_Mes.Pant_Price
FROM
CustBillPayment
JOIN Pant_Mes ON CustBillPayment.CustomerId = Pant_Mes.CustomerId
WHERE
CustBillPayment.CustomerId=17
Oder Sie alle Waren in einem Tisch legen kann (ich denke, es ist für E-Shop oder so ähnlich). Besser wäre ändern Tabellenschema sein, aber wenn Sie wirklich guten Grund haben, warum Waren zu lagern in separaten Tabellen (und Art der Ware ist nicht guter Grund) Sie diese Abfrage tun kannst:
SELECT
CustBillPayment.CustomerId,
CustBillPayment.Customer_Name,
CustBillPayment.CustBill_Total,
CustBillPayment.CustBill_Paid,
CustBillPayment.CustBill_ReamingAmt,
CustBillPayment.Created_Date,
CustBillPayment.Delivery_Date,
CustBillPayment.Updated_Date,
Goods_Mes.Type,
Goods_Mes.Qty,
Goods_Mes.Price,
Goods_Mes.Total
FROM
CustBillPayment
JOIN (SELECT Shirt_Mes.Shirt_Type AS Type,
Shirt_Mes.Shirt_Qty AS Qty,
Shirt_Mes.Shirt_Price AS Price,
Shirt_Mes.Shirt_Total AS Total,
Shirt_Mes.CustomerId FROM Shirt_Mes
UNION
SELECT Pant_Mes.Pant_Type AS Type,
Pant_Mes.Pant_Qty AS Qty,
Pant_Mes.Pant_Price AS Price,
Pant_Mes.Pant_Total AS Total,
Pant_Mes.CustomerId FROM Pant_Mes
) Goods_Mes ON CustBillPayment.CustomerId = Goods_Mes.CustomerId
WHERE
CustBillPayment.CustomerId=17
Um die Abfrage besser zu machen Sie können Shirt_Total
und Pant_Total
entfernen und Goods_Mes.Total
durch Goods_Mes.Qty * Goods_Mes.Price
ersetzen.
fügen Sie eine Auswahl und Gruppe nach den gewünschten Feldern hinzu: ** wählen Sie [Ihre Dateien] aus (Ihrer ursprünglichen Abfrage) Gruppe nach [Ihre Felder] ** – Badiparmagi
haben Sie versucht, 'Select Distinct' und' Group By' hinzuzufügen Abfrage?SType Spalte scheint gut Spalte zu gruppieren von – Misiakw