SQL Server Forums
Profile | Register | Active Topics | Members | Search | Forum FAQ
 
Register Now and get your question answered!
Username:
Password:
Save Password
Forgot your Password?

 All Forums
 SQL Server 2008 Forums
 Transact-SQL (2008)
 Need all the records from o
 New Topic  Reply to Topic
 Printer Friendly
Author Previous Topic Topic Next Topic  

helixpoint
Constraint Violating Yak Guru

250 Posts

Posted - 05/15/2012 :  10:56:31  Show Profile  Reply with Quote
Basically I have tranactions that go with offenders I need to bring back all offenders even if they have no tranaction that fit the where clause. So I will bring back the offender will null fields if he has no transactions. I need to search for tranaction in a tracaction date, but when I put it in the where clause, I loose the offender that has no tranactions. Here is what I tried to put in the where clause...
AND CONVERT(DATETIME, CONVERT(VARCHAR, txn.Txn_Dt, 101)) >= '05/01/2004'


Here is my code
SELECT 
txn.available_bal                                                           AS BalanceAfterTxn, 
CONVERT (VARCHAR(12), txn.txn_dt, 101) 
AS [Transaction Date], 
Isnull(txn.batch_no, '')                                                    AS Batch#, 
txn.Txn_TypeCd, 
( CASE 
    WHEN txn.Txn_TypeCd IN ( 30181, 30182 ) THEN ( '-' + Cast(txn.Txn_Amt AS 
                                                              VARCHAR) ) 
    -- Debit /Escrow :: Neha 
    WHEN txn.Txn_TypeCd IN ( 30188, 30180 ) THEN ( '+' + Cast(txn.Txn_Amt AS 
                                                              VARCHAR) ) 
    -- Release Escrow /Credit ::Neha 
    ELSE ( '' ) 
  END )                                                                     AS TxnAmt, 
tra.housing_unit                                                            AS Location, 
facbed.facility_locationnm                                                  AS Facility, 
fam.Fam_BldCd_Fk                                                            AS Block, 
fam.Fam_SectionCd_Fk                                                        AS Section, 
Isnull(fam.Fam_CellId_Fk, '')                                               AS CellNo, 
--Added by offshore 04/15- CSD000000087525 
( CASE 
    WHEN txn.Txn_TypeCd IN ( 30180, 30181 )THEN lk.lookup_value -- Debit/Credit 
    ELSE lktype.lookup_value 
  END )                                                                     AS TxnDescription,--Include other txn type Defect 4699 :: Neha 
acc.current_bal                                                             AS CurBalance, 
acc.escrow_bal                                                              AS Escrow, 
CASE Case_StatusCd 
  WHEN 80040 THEN cs.Case_Id 
  ELSE adm.Udfgetrecentcaseid(acc.Cmn_Offender_Fk) 
END                                                                         AS Case#, 
Ltrim(Rtrim(nm.Offender_LastNm)) + ', ' + Ltrim(Rtrim(nm.Offender_FirstNm)) AS OffenderName,--- added ltrim and rtrim to remove empty spaces    
o.offender_id                                                               AS Offender#, 
/* 03/15 - Added by offshore */ 
--OFA.FN_GetTransactionDetail(txn.Ofa_Transaction_Dtls_Pk)as Details 
--Added by offshore 04/15- CSD000000087525 
( CASE 
    WHEN txn.Txn_TypeCd IN ( 30182, 30188 )THEN lk.lookup_value 
    -- Escrow/Release Escrow 
    ELSE ofa.Fn_gettransactiondetail(txn.Ofa_Transaction_Dtls_Pk) 
  END )                                                                     AS Details, 
location.Facility_LocationNm--HI.Permanent_Loc  
, 
txn.txn_dt 
FROM   ofa.tblOFA_TRANSACTION_DTLS AS txn 
       INNER JOIN ofa.tblofa_account_dtls AS acc 
         ON txn.ofa_account_dtls_fk = acc.ofa_account_dtls_pk 
            AND txn.delete_flg = 0 
       INNER JOIN cmn.tblCMN_offender AS o 
         ON acc.cmn_offender_fk = o.cmn_offender_pk 
       INNER JOIN adm.tbladm_lookup AS lktype 
         ON txn.txn_typecd = lktype.adm_lookup_pk 
       --Include other txn type Defect 4699 :: Neha 
       INNER JOIN cmn.tblCMN_case AS cs 
         ON cs.Cmn_offender_fk = o.cmn_offender_pk 
       --AND cs.Cmn_Case_Pk = txn.Cmn_Case_Fk --and cs.case_statusCd = 80040 
       INNER JOIN cmn.tblCMN_offender_nm AS nm 
         ON nm.cmn_offender_fk = o.cmn_offender_pk 
            AND nm.OffenderName_TypeCd = 84504 
            AND cs.Cmn_Case_Pk = nm.Cmn_Case_Fk --REM Ticket # : HD0000001105485 
       LEFT OUTER JOIN adm.tbladm_lookup AS lk 
         ON txn.txn_desccd = lk.adm_lookup_pk 
       LEFT OUTER JOIN tra.tbltra_final_bed_assignment AS tra 
         ON tra.cmn_offender_fk = o.cmn_offender_pk 
            AND tra.Cmn_Case_Fk = txn.Cmn_Case_Fk 
            AND tra.date_timeout IS NULL 
       LEFT OUTER JOIN fam.tblFam_Bed_Dtls fam 
         ON fam.fam_bedid_pk = tra.fam_bedid_fk 
       LEFT OUTER JOIN adm.tblADM_FAC_LOCATIONS facbed 
         ON facbed.facility_locationcd = fam.Fam_FacilityCd_Fk 
       --INNER JOIN CMN.tblCMN_HEADER_INFO AS HI ON HI.Cmn_Case_Fk = txn.Cmn_Case_Fk 
       INNER JOIN adm.tblADM_FAC_LOCATIONS AS location 
         ON location.Adm_Fac_Locations_Pk = 
            Isnull(acc.Account_CurrentLoc_Fk, acc.Account_PreviousLoc_Fk) 
WHERE  location.facility_locationcd = location.facility_locationcd 
       AND o.offender_id IN ( '8190AZ', '5125AG' ) 
       AND CONVERT(DATETIME, CONVERT(VARCHAR, txn.Txn_Dt, 101)) >= '05/01/2004' 
ORDER  BY txn.inserted_dt DESC, 
          Ofa_Transaction_Dtls_Pk DESC


Dave
Helixpoint Web Development
http://www.helixpoint.com

jimf
Flowing Fount of Yak Knowledge

USA
2868 Posts

Posted - 05/15/2012 :  11:51:36  Show Profile  Reply with Quote
I don't see why you're doing all those conversions
AND txn.Txn_Dt >= '20040501'

If you need all the offenders, you'd need to RIGHT JOIN to the offenders table. Also, put that clause in to your JOIN clause, instead of in the WHERE clause.


Jim

Everyday I learn something that somebody else already knew
Go to Top of Page
  Previous Topic Topic Next Topic  
 New Topic  Reply to Topic
 Printer Friendly
Jump To:
SQL Server Forums © 2000-2009 SQLTeam Publishing, LLC Go To Top Of Page
This page was generated in 0.06 seconds. Powered By: Snitz Forums 2000