1

そのクエリは解決しましたが、次の 2 つのクエリをマージする必要があります。

(SELECT Zila,
COUNT(AbhidayMaster.OfficeRegId) As AbhidayPaidSansthan,
SUM(AbhidayMaster.TotalEmp) As TotalWorkerPaid
FROM PanjikaranMaster, AbhidayMaster
WHERE PanjikaranMaster.OfficeRegId=AbhidayMaster.OfficeRegId
AND AbhidayMaster.DipositDate Between ('2012-06-22') AND ('2012-09-19') GROUP BY Zila)



Select 
((SELECT count(distinct OfficeRegId) FROM PanjikaranMaster)
 -
(SELECT count(distinct OfficeRegId) FROM AbhidayMaster)) As AbhidayNotPaidSansthan
4

1 に答える 1

2

どうですか:

SELECT 
   Zila, 
   COUNT(AbhidayMaster.OfficeRegId) As AbhidayPaidSansthan ,
   SUM(AbhidayMaster.TotalEmp) As TotalWorkerPaid
FROM 
   PanjikaranMaster
INNER JOIN
   AbhidayMaster ON PanjikaranMaster.OfficeRegId = AbhidayMaster.OfficeRegId
WHERE
   AbhidayMaster.DipositDate BETWEEN '20120622' AND '20120919'
GROUP BY 
   Zila

JOIN構文を変更して、適切なANSI / ISO標準JOINを使用しますINNER JOIN。これは、JOIN条件が属する明示的なものです(キックする悪い習慣:古いスタイルのJOINを使用して、「古いスタイル」のJOINが本当に悪い考えであり、避けるべきです)。

また、日付文字列リテラルを言語および地域の設定に安全なものに変更しました。形式はYYYYMMDDダッシュなし!)です。

于 2012-09-24T06:25:21.943 に答える