Ich versuche, die Datensätze aufzulisten, die meine Bedingung erfüllt. Da ich AND
und OR
Operator zusammen benutze bekomme ich nicht den genauen Bericht. Hier ist meine AbfrageMit OR, AND-Operator in einer einzigen Abfrage
SELECT o.sales_order_id AS SID, o.reference, o.status, o.last_modified, sol.sales_order_id, sol.item, sol.quantity, sol.selling_price, sol.discount, sol.tax, SUM(sol.tax_amount) AS Tamt, SUM(sol.total) as Total, i.iid, GROUP_CONCAT(DISTINCT i.name) AS iname, l.company, t.tax_id, t.name as tname, t.rate from orders o INNER JOIN before_order_line_items sol ON o.sales_order_id = sol.sales_order_id INNER JOIN leads l ON o.company_id=l.id INNER JOIN items i ON sol.item=i.iid INNER JOIN taxes t ON sol.tax=t.tax_id WHERE o.order_quote='Order' AND o.authorise='Yes' OR o.assigned_to=6 OR o.user_id=6 GROUP BY o.sales_order_id ORDER BY o.sales_order_id DESC
ich beide Aufträge und Angebote in einzelnen Tabelle am Speicherung Orders
, für Aufträge i speichern Sie es als Order
in order_quote Spalte, für Zitate ist es Quote
Es ist nicht order_quote='Order'
prüft Bedingung, es zeigt sowohl Bestellungen und Angebote.
Wenn ich OR o.assigned_to=6 OR o.user_id=6
entferne, gibt es das richtige Ergebnis.
habe ich versucht, wie diese Arbeit
SELECT DISTINCT o.order_quote=`Order`, .....
Aber does't DISTINCT verwenden.
SELECT o.sales_order_id AS SID, o.reference, o.status, o.last_modified, sol.sales_order_id, sol.item, sol.quantity, sol.selling_price, sol.discount, sol.tax, SUM(sol.tax_amount) AS Tamt, SUM(sol.total) as Total, i.iid, GROUP_CONCAT(DISTINCT i.name) AS iname, l.company, t.tax_id, t.name as tname, t.rate from orders o INNER JOIN before_order_line_items sol ON o.sales_order_id = sol.sales_order_id INNER JOIN leads l ON o.company_id=l.id INNER JOIN items i ON sol.item=i.iid INNER JOIN taxes t ON sol.tax=t.tax_id WHERE (o.order_quote='Order' AND o.authorise='Yes') AND (o.assigned_to=6 OR o.user_id=6) GROUP BY o.sales_order_id ORDER BY o.sales_order_id DESC
hinzufügen Klammern zu 'und',' OR' Zustand, wie '(o.authorise = 'Ja' OR o.assigned_to = 6)' –
nicht Sir Arbeits – user3368088
gut Ich meinte nicht den genauen Zustand. Sie müssen geschweifte Klammern gemäß Ihrer logischen Bedingung hinzufügen, wie in der folgenden Antwort erwähnt –