Üç tablomuz var tblinventory, tbldisbursement, tblmissinglost. Ödemeler düşüldükten ve o gün için iade edildikten sonra toplam kitap stoğunu hesaplamak istiyorum.Kitaplıktaki kitapların stokunun hesaplanması için Mysql sorgusu
select bn.No_of_books_procured
- (count(mis.Unr_ret_donated_discareded))
- (count(case when dis.dis_disbursed_return = 1
then dis.dis_disbursed_return end))as Stock
from tbl_inventorylibbooks bn
right
join tbl_limgt_booksmissing_lost_adjust mis
on mis.Book_Name_missingbk = bn.Id_inventory
left
join tbllibmange_disbursement dis
on dis.dis_book_name_fk_id = bn.Id_inventory
where bn.Id_inventory = 14
Birkaç girişte doğru yanıtı alıyorum ve diğer sonuçlar, sorgunun yanlış yanıtlar verdiğini gösteriyor. Bunun için bir çözüm sağlayabilir misiniz?
tblinventory
id Name
----------
1 xyz
= 10
tbldisbursement 1 = tahsis edilen ve 0 = geri
**booknameFK disbursed/returned**
----------------------------------------
Booknafk1 1
Booknafk2 0
Booknafk3 1
sağladığı toplam kitapları dikkate
tblmissinglost
**id BooknameFk missng**
----------------------------------------
1 Booknafk1 lost
2 Booknafk1 lost
----------------------------------------
Ayrıca bu sorguyu
select (bn.No_of_books_procured) as procured,
count(distinct mis.Id_missingbooks_pid) as missing,
count(case when bs.dis_disbursed_return!=0 then
bs.dis_disbursed_return end) as disbursed
from tbl_limgt_booksmissing_lost_adjust mis
join tbllibmange_disbursement bs on
mis.book_name_missingbk=bs.dis_book_name_fk_id
join tbl_inventorylibbooks bn on bs.dis_book_name_fk_id=bn.Id_inventory
where bn.Id_inventory=14 group by bn.Id_inventory
yinelenen girdileri
alıyorum kontrol
Geçerli ve istenen çıktıları dahil edebilir misiniz? –
Lütfen tablo yapılarını ve örnek verilerini eklemek için gönderinizi düzenleyin. –
Ayrıca, geçerli güne göre filtrelenecek tarihleri göremiyorum. Bu, bu tabloların yalnızca geçerli günlük kayıtları tuttuğu anlamına mı geliyor? –