sjhosseini
پنج شنبه 21 آذر 1387, 18:48 عصر
سلام
این sql رو برای یافتن موجودی یک کالا نوشتم ولی اگر کالایی در یکی از جداول نباشه مثلا جدول factordetails موجودی اون کالا صفر داده میشه در صورتیکه همون کالا در جدول کالا دارای موجودی اولیه هست. یعنی برای اینکه موجودی کالا به طور صحیح داده بشه باید در همه جداول که موجودی در اونا بررسی میشه باید اون کالا دارای رکورد باشه در غیر اینصورت اگر حتی در یکی از جداول هم اون کالا نباشه مقدارش رو صفر میزنه.
SELECT Kala_Code,K_Name,K_Count,K_Price
FROM
(SELECT
Tbl_Kala.Kala_Code AS Kala_Code,
Tbl_Kala.K_Name AS K_Name,
Tbl_Kala.K_First_Count + (SELECT SUM(K_Count) FROM Tbl_KalaInc GROUP BY Kala_Code HAVING (Tbl_KalaInc.Kala_Code = Tbl_Kala.Kala_Code)) - (SELECT Sum(K_Count) FROM Tbl_FactorDetails WHERE (Tbl_FactorDetails.Kala_Code = Tbl_Kala.Kala_Code)) AS K_Count,
Tbl_Kala.K_Price AS K_Price
FROM Tbl_KalaGroup INNER JOIN
Tbl_Kala ON Tbl_KalaGroup.KalaGroup_Code = Tbl_Kala.KalaGroup_Code) AS TempTable
Order BY K_Name
با تشکر
این sql رو برای یافتن موجودی یک کالا نوشتم ولی اگر کالایی در یکی از جداول نباشه مثلا جدول factordetails موجودی اون کالا صفر داده میشه در صورتیکه همون کالا در جدول کالا دارای موجودی اولیه هست. یعنی برای اینکه موجودی کالا به طور صحیح داده بشه باید در همه جداول که موجودی در اونا بررسی میشه باید اون کالا دارای رکورد باشه در غیر اینصورت اگر حتی در یکی از جداول هم اون کالا نباشه مقدارش رو صفر میزنه.
SELECT Kala_Code,K_Name,K_Count,K_Price
FROM
(SELECT
Tbl_Kala.Kala_Code AS Kala_Code,
Tbl_Kala.K_Name AS K_Name,
Tbl_Kala.K_First_Count + (SELECT SUM(K_Count) FROM Tbl_KalaInc GROUP BY Kala_Code HAVING (Tbl_KalaInc.Kala_Code = Tbl_Kala.Kala_Code)) - (SELECT Sum(K_Count) FROM Tbl_FactorDetails WHERE (Tbl_FactorDetails.Kala_Code = Tbl_Kala.Kala_Code)) AS K_Count,
Tbl_Kala.K_Price AS K_Price
FROM Tbl_KalaGroup INNER JOIN
Tbl_Kala ON Tbl_KalaGroup.KalaGroup_Code = Tbl_Kala.KalaGroup_Code) AS TempTable
Order BY K_Name
با تشکر