मैं एक और उपनाम बनाने के लिए 2 उपनामों को घटाने की कोशिश कर रहा हूं लेकिन मुझे "अज्ञात कॉलम" त्रुटि मिल रही है।2 अन्य उपनामों के गणित परिणाम का उपयोग करके उपनाम बनाना
select o.id, o.name,
(select sum(l.source_expense)
from `assignments` as a
left join `leads` as l on (l.id = a.lead_id)
where a.{$this->sql_column}=o.id
and l.date_created between {$this->date_from} and {$this->date_to}
and find_in_set(l.vertical_id, '".implode(',', $this->app_user->verticals)."')
) as `expense`,
(select sum(a.buyer_revenue)
from `assignments` as a
left join `leads` as l on (l.id = a.lead_id)
where a.refunded=0
and a.{$this->sql_column}=o.id
and l.date_created between {$this->date_from} and {$this->date_to}
and find_in_set(l.vertical_id, '".implode(',', $this->app_user->verticals)."')
) as `revenue`,
`revenue` - `expense` as `profit`
from {$this->sql_table} as o
असल में, मैं expense
से revenue
को घटा कर एक profit
उर्फ बनाना चाहते हैं:
यहाँ मेरी एसक्यूएल है। कारण यह है कि मैं डेटाटेबल्स का उपयोग कर रहा हूं और कॉलम को क्रमबद्ध करना चाहता हूं। मुझे पहले से ही पता है कि मैं PHP के साथ आसानी से ऐसा कर सकता हूं।
मैं इसे कैसे पूरा कर सकता हूं?
संपादित करें - मैंने नीचे दिए गए उत्तरों का प्रयास किया है और पीएचपीएसटॉर्म से "प्रत्येक व्युत्पन्न तालिका में उपनाम होना चाहिए" और क्वेरी चलाने का प्रयास करते समय एक वाक्यविन्यास त्रुटि प्राप्त हो रही है।
यहाँ नई क्वेरी:
select t.id, t.name, t.expense, t.revenue, t.revenue - t.expense as profit
from(select o.id, o.name,
(select sum(l.source_expense)
from `assignments` as a
left join `leads` as l on (l.id = a.lead_id)
where a.{$this->sql_column}=o.id
and l.date_created between {$this->date_from} and {$this->date_to}
and find_in_set(l.vertical_id, '".implode(',', $this->app_user->verticals)."')
) as `expense`,
(select sum(a.buyer_revenue)
from `assignments` as a
left join `leads` as l on (l.id = a.lead_id)
where a.refunded=0
and a.{$this->sql_column}=o.id
and l.date_created between {$this->date_from} and {$this->date_to}
and find_in_set(l.vertical_id, '".implode(',', $this->app_user->verticals)."')
) as `revenue`
from {$this->sql_table} as o
) as t
अन्य उत्तर के समान, त्रुटि प्राप्त करना - "प्रत्येक व्युत्पन्न तालिका में उपनाम होना चाहिए" – kjdion84
@ kjdion84 अपनी पूर्ण क्वेरी पोस्ट करें, मैं आपको बताऊंगा कि आपने क्या किया है। – sagi
@ kjdion84 आप 'ओ' का चयन कर रहे हैं। 'टी। कॉलम>', (आईडी और नाम) की बजाय बाहरी क्वेरी में ', इसे ठीक करें और पुनः प्रयास करें –
sagi