瀏覽代碼

修改有问题的SQL

zhuoning 3 年之前
父節點
當前提交
ed0a40336e

+ 62 - 63
huimv-hy-production/huimv.hy.erp.datasource/src/main/java/com/huimv/production/datasource/dao/repo/TDeliveryRepo.java

@@ -99,16 +99,15 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
                     "from (select " +
                     "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' " +
                     "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID " +
-                    "where TBreeding.FLogStatee in(3,4,6)   and datediff(dd,?1, FDateBreed)>=-121 and datediff(dd,?2,FDateBreed) <=-121" +
+                    "where TBreeding.FLogStatee in(3,4,6)   and datediff(dd,'2021-2-1', FDateBreed)>=-121 and datediff(dd,'2021-3-9',FDateBreed) <=-121 " +
                     "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt " +
                     ") tmp_tblpz " +
                     "left join (select TReturnEstrusewStru.SowStrID,TReturnEstrusewStru.FParityInt from TReturnEstrusewStru " +
                     "left join TReturnEstrus on TReturnEstrusewStru.FReturnEstrusMainStruID=TReturnEstrus.FID " +
-                    "where TReturnEstrus.FLogStatee in(3,4,6)  and datediff(dd,?1, TReturnEstrusewStru.FDateBreed)>=-121 and datediff(dd,?2,TReturnEstrusewStru.FDateBreed) <=-121" +
+                    "where TReturnEstrus.FLogStatee in(3,4,6)  and datediff(dd,'2021-2-1', TReturnEstrusewStru.FDateBreed)>=-121 and datediff(dd,'2021-3-9',TReturnEstrusewStru.FDateBreed) <=-121 " +
                     ") tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt " +
-                    "" +
-                    "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID" +
-                    "where TOrganizeCell.FNAME in('海盐曙光',)" +
+                    "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID " +
+                    "where TOrganizeCell.FNAME in('海盐曙光') " +
                     "group by TOrganizeCell.FSHORTNAME")
     List<Object[]> getReEstrusRate(String startDate,String endDate);
 
@@ -137,7 +136,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             ") tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt " +
             "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID " +
             "where TOrganizeCell.FNAME is not null " +
-            "group by TOrganizeCell.FSHORTNAME,tmp_tblpz.FBreedD ")
+            "group by TOrganizeCell.FSHORTNAME,tmp_tblpz.FBreedD")
     List<Object[]> getParturitionRate_old(String startDate, String endDate);
 
     @Query(nativeQuery = true,value ="select TOrganizeCell.FSHORTNAME as '猪场', " +
@@ -145,16 +144,16 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "from (select " +
             "TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt,count(TNewStru8094.FID) as '配种次数' " +
             "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID " +
-            "where TBreeding.FLogStatee in(3,4,6) and datediff(dd,?1, FDateBreed)>=-121 and datediff(dd,?2,FDateBreed) <=-121" +
+            "where TBreeding.FLogStatee in(3,4,6) and datediff(dd,?1, FDateBreed)>=-121 and datediff(dd,?2,FDateBreed) <=-121 " +
             "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt " +
             ") tmp_tblpz " +
             "left join (select TNewStru7743.SowStrID,TNewStru7743.FParityInt from TNewStru7743 " +
             "left join TDelivery on TNewStru7743.FDeliveryMainStruID=TDelivery.FID " +
-            "where TDelivery.FLogStatee in(3,4,6)  and datediff(dd,?1, TNewStru7743.FDateBreed )>=-121" +
+            "where TDelivery.FLogStatee in(3,4,6)  and datediff(dd,?1, TNewStru7743.FDateBreed )>=-121 " +
             " and datediff(dd,?2,TNewStru7743.FDateBreed ) <=-121 " +
             ") tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt " +
-            "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID" +
-            "where TOrganizeCell.FNAME in('海盐曙光')" +
+            "left join TOrganizeCell on tmp_tblpz.HogpendID=TOrganizeCell.FID " +
+            "where TOrganizeCell.FNAME in('海盐曙光') " +
             "group by TOrganizeCell.FSHORTNAME")
     List<Object[]> getParturitionRate(String startDate, String endDate);
     
@@ -173,7 +172,7 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "RIGHT JOIN TBreed tb ON tb.FID = tp.VARIETYDID GROUP BY oc.FSHORTNAME,tb.FNAME ")
     List<Object[]> getStorage_old();
 
-    @Query(nativeQuery = true,value ="SELECT oc.FSHORTNAME,tb.FNAME,COUNT(tp.FID) FROM (select TOrganizeCell.FID,TOrganizeCell.FSHORTNAME from  TOrganizeCell where FNAME in ('海盐曙光',)) oc left" +
+    @Query(nativeQuery = true,value ="SELECT oc.FSHORTNAME,tb.FNAME,COUNT(tp.FID) FROM (select TOrganizeCell.FID,TOrganizeCell.FSHORTNAME from  TOrganizeCell where FNAME in ('海盐曙光',)) oc left " +
             "JOIN TPigArchives tp ON tp.HOGPENWHEREDID = oc.FID " +
             "left JOIN TBreed tb ON tb.FID = tp.VARIETYDID GROUP BY oc.FSHORTNAME,tb.FNAME")
     List<Object[]> getStorage();
@@ -225,33 +224,33 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "( SELECT FSHORTNAME FROM dbo.TOrganizeCell WHERE FID = td.HOGPENDID ) AS '猪场'," +
             "COUNT ( tn.SOWSTRID ) AS '分娩头数'," +
             "SUM ( tn.FAMOUNTKITTENINT ) AS '产仔总数'," +
-            "ISNULL(tdie.csamount,0)+ISNULL(tlose.csamount,0) AS '仔猪死淘数'" +
-            "FROM" +
-            "dbo.TDelivery td" +
+            "ISNULL(tdie.csamount,0)+ISNULL(tlose.csamount,0) AS '仔猪死淘数' " +
+            "FROM " +
+            "dbo.TDelivery td " +
             "LEFT JOIN dbo.TNewStru7743 tn ON tn.FDeliveryMainStruID = td.FID " +
-            "LEFT JOIN (SELECT isnull(sum(isnull(FPIGDIECOUNT,0)+isnull(FWEAKPIGDIECOUNT,0)),0) as csamount,PIGHOUSEID FROM TPigdieChild,TPigdie WHERE" +
+            "LEFT JOIN (SELECT isnull(sum(isnull(FPIGDIECOUNT,0)+isnull(FWEAKPIGDIECOUNT,0)),0) as csamount,PIGHOUSEID FROM TPigdieChild,TPigdie WHERE " +
             "FPigdieMainStruID = TPigdie.FID " +
             "AND FDIEDATE BETWEEN ?1 " +
-            "AND ?2" +
-            "and FPIGSEX = 3 AND FPIGSTATE = 15" +
-            "GROUP BY" +
-            "PIGHOUSEID ) tdie on tdie.PIGHOUSEID = td.HOGPENDID" +
+            "AND ?2 " +
+            "and FPIGSEX = 3 AND FPIGSTATE = 15 " +
+            "GROUP BY " +
+            "PIGHOUSEID ) tdie on tdie.PIGHOUSEID = td.HOGPENDID " +
             "LEFT JOIN (SELECT isnull(ISNULL(sum(TPigLoseChild.FpigLoseCount),0)+ISNULL(sum(TPigLoseChild.FweakPigLoseCount),0),0) as csamount,PIGHOUSEID FROM TPigLoseChild," +
             "TPigLose " +
-            "WHERE" +
+            "WHERE " +
             "FPigLoseMainStruID = TPigLose.FID " +
             "AND FPIGLOSEDATE BETWEEN ?1 " +
             "AND ?2 " +
             "AND FSEX = 3 " +
-            "AND FPIGSTATE = 15" +
-            "GROUP BY" +
-            "PIGHOUSEID ) tlose on tlose.PIGHOUSEID = td.HOGPENDID" +
-            "WHERE" +
+            "AND FPIGSTATE = 15 " +
+            "GROUP BY " +
+            "PIGHOUSEID ) tlose on tlose.PIGHOUSEID = td.HOGPENDID " +
+            "WHERE " +
             "td.FLOGSTATEE IN ( 3, 4, 6 ) " +
             "AND datediff( dd, ?1, td.FDATEDELIVERY ) >= 0 " +
             "AND datediff( dd, ?2, td.FDATEDELIVERY ) <= 0 " +
-            "AND td.HOGPENDID IN (select FID from TOrganizeCell where FNAME in ('海盐曙光',)) " +
-            "GROUP BY" +
+            "AND td.HOGPENDID IN (select FID from TOrganizeCell where FNAME in ('海盐曙光')) " +
+            "GROUP BY " +
             "td.HOGPENDID," +
             "tdie.csamount," +
             "tlose.csamount")
@@ -281,8 +280,8 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "from TBreeding left join TNewStru8094 on TNewStru8094.FBreedingMainStruID=TBreeding.FID " +
             "where TBreeding.FLogStatee in(3,4,6)  and datediff(dd,?1, FDateBreed)>=0 and datediff(dd,?2,FDateBreed) <=0 " +
             "group by TBreeding.HogpendID,TNewStru8094.FBreedD,TNewStru8094.SowStrID,TNewStru8094.FParityInt " +
-            ") tmp_tblpzts  left join TOrganizeCell on tmp_tblpzts.HogpendID=TOrganizeCell.FID" +
-            "where  TOrganizeCell.FNAME in('海盐曙光',)" +
+            ") tmp_tblpzts  left join TOrganizeCell on tmp_tblpzts.HogpendID=TOrganizeCell.FID " +
+            "where  TOrganizeCell.FNAME in('海盐曙光') " +
             "group by TOrganizeCell.FSHORTNAME,tmp_tblpzts.FBREEDD")
     List<Object[]> getMateQuantity(String startDate, String endDate);
 
@@ -331,8 +330,8 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
 
     @Query(nativeQuery = true,value =" select " +
             " TOrganizeCell.FshortName as '猪场', " +
-            "  CAST((tmp_tblpz.fmts+isnull(tmp_tblpzlc.lcts,0))*1.0/tmp_tblpz.pzts*100 as dec(8,2)) as '受胎率'" +
-            "  from" +
+            "  CAST((tmp_tblpz.fmts+isnull(tmp_tblpzlc.lcts,0))*1.0/tmp_tblpz.pzts*100 as dec(8,2)) as '受胎率' " +
+            "  from " +
             "    (select tmp_tblpz.HogpendID as 'ZCID',sum(tmp_tblpz.配种次数) as 'PZTS', count(tmp_tblfm.SowStrID) as 'fmts'," +
             "  CAST(count(tmp_tblfm.SowStrID)*1.0/(case sum(tmp_tblpz.配种次数) when 0 then null else sum(tmp_tblpz.配种次数) end)*100 as dec(8,2)) as 'PZFML' " +
             "  from (select " +
@@ -358,9 +357,9 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             " left join TAbortion on TAbortionNewStru.FAbortionMainStruID=TAbortion.FID " +
             " where TAbortion.FLogStatee in(3,4,6)  and TAbortionNewStru.FDateBreed>=DATEADD(DAY,-121,?1) and TAbortionNewStru.FDateBreed<=DATEADD(DAY,-121,?2)  " +
             " ) tmp_tblfm on tmp_tblpz.SowStrID=tmp_tblfm.SowStrID and tmp_tblpz.FParityInt=tmp_tblfm.FParityInt " +
-            " group by tmp_tblpz.HogpendID) tmp_tblpzlc on tmp_tblpzlc.ZCID=tmp_tblpz.ZCID" +
-            " left join TOrganizeCell on tmp_tblpz.ZCID=TOrganizeCell.FID" +
-            " where TOrganizeCell.FNAME in('海盐曙光',)")
+            " group by tmp_tblpz.HogpendID) tmp_tblpzlc on tmp_tblpzlc.ZCID=tmp_tblpz.ZCID " +
+            " left join TOrganizeCell on tmp_tblpz.ZCID=TOrganizeCell.FID " +
+            " where TOrganizeCell.FNAME in('海盐曙光')")
     List<Object[]> getConceptionRate(String startDate, String endDate);
 
 
@@ -445,80 +444,80 @@ public interface TDeliveryRepo extends JpaRepository<TDeliveryEntity, String>, J
             "H.FNAME")
     List<Object[]> getAllStorage_old();
 
-    @Query(nativeQuery = true,value ="SELECT" +
+    @Query(nativeQuery = true,value ="SELECT " +
             "H.FNAME AS '猪场'," +
             "mzcl AS '母猪存栏'," +
             "gz + mzcl + jc + shbamount AS '总存栏' " +
-            "FROM" +
+            "FROM " +
             "(" +
-            "SELECT" +
+            "SELECT " +
             "TOrganizeCell.FID," +
             "TOrganizeCell.FName " +
-            "FROM" +
+            "FROM " +
             "TOrganizeCell " +
-            "GROUP BY" +
+            "GROUP BY " +
             "TOrganizeCell.FName," +
             "TOrganizeCell.FID " +
-            ") H" +
-            "RIGHT JOIN (" +
-            "SELECT" +
+            ") H " +
+            "RIGHT JOIN ( " +
+            "SELECT " +
             "tblz_tmp.FNAME AS NAME," +
             "isnull( SUM( tblz_tmp.gz ), 0 ) AS 'gz'," +
             "isnull( sum( tblz_tmp.mzcl ), 0 ) AS 'mzcl'," +
             "isnull( SUM( tblz_tmp.jc ), 0 ) AS 'jc'," +
             "isnull( SUM( tblz_tmp.shbamount ), 0 ) AS 'shbamount' " +
-            "FROM" +
+            "FROM " +
             "(" +
-            "SELECT" +
+            "SELECT " +
             "TPigArchives.HOGPENWHEREDID 'FNAME'," +
-            "CASE" +
+            "CASE " +
             "WHEN TPigArchives.FPIGSTATEE IN ( 2, 11 ) " +
-            "AND TPigArchives.FPigClassEnum = 1 THEN" +
+            "AND TPigArchives.FPigClassEnum = 1 THEN " +
             "COUNT( TPigArchives.FID ) " +
             "END AS 'gz'," +
-            "CASE" +
+            "CASE " +
             "WHEN TPigArchives.FPigStatee IN ( 3, 4, 5, 6, 7, 10, 11, 12, 13 ) " +
-            "AND TPigArchives.FPigClassEnum = 2 THEN" +
+            "AND TPigArchives.FPigClassEnum = 2 THEN " +
             "COUNT( TPigArchives.FID ) " +
             "END AS 'mzcl'," +
             "0 AS 'jc'," +
             "0 AS 'shbamount' " +
-            "FROM" +
+            "FROM " +
             "TPigArchives " +
-            "WHERE" +
+            "WHERE " +
             "TPigArchives.FPigStatee IN ( 2, 3, 4, 5, 6, 7, 10, 11, 12, 13 ) " +
-            "GROUP BY" +
+            "GROUP BY " +
             "TPigArchives.HOGPENWHEREDID," +
             "TPigArchives.FPIGSTATEE," +
-            "TPigArchives.FPigClassEnum UNION ALL" +
-            "SELECT" +
+            "TPigArchives.FPigClassEnum UNION ALL " +
+            "SELECT " +
             "TPigArchives.HOGPENWHEREDID 'FNAME'," +
             "0 AS 'gz'," +
             "0 AS 'mzcl'," +
-            "CASE" +
-            "WHEN TPigArchives.FPigStatee IN ( 15, 14, 1, 21, 22, 16 ) THEN" +
+            "CASE " +
+            "WHEN TPigArchives.FPigStatee IN ( 15, 14, 1, 21, 22, 16 ) THEN " +
             "isnull( SUM( TPigArchivesChild.FpigAmountOfPigsty ), 0 ) " +
             "END AS 'jc'," +
-            "CASE" +
+            "CASE " +
             "WHEN TPigArchives.FPigStatee = 11 " +
-            "AND TPigArchives.FPigClassEnum = 3 THEN" +
+            "AND TPigArchives.FPigClassEnum = 3 THEN " +
             "isnull( SUM( TPigArchivesChild.FpigAmountOfPigsty ), 0 ) " +
             "END AS 'shbamount' " +
-            "FROM" +
-            "TPigArchives" +
+            "FROM " +
+            "TPigArchives " +
             "LEFT JOIN TPigArchivesChild ON TPigArchivesChild.FPigArchivesMainStruID = TPigArchives.FID " +
-            "WHERE" +
+            "WHERE " +
             "TPigArchives.FPigClassEnum IN ( 1, 2, 3 ) " +
             "AND TPigArchives.FBATCHSTATE = 0 " +
-            "GROUP BY" +
+            "GROUP BY " +
             "TPigArchives.HOGPENWHEREDID," +
             "TPigArchives.FPIGSTATEE," +
             "TPigArchives.FPigClassEnum " +
             ") tblz_tmp " +
-            "GROUP BY" +
+            "GROUP BY " +
             "tblz_tmp.FNAME " +
-            ") AS tbls_tmp ON tbls_tmp.NAME = H.fid where H.FNAME in('海盐曙光',)" +
-            "ORDER BY" +
+            ") AS tbls_tmp ON tbls_tmp.NAME = H.fid where H.FNAME in('海盐曙光') " +
+            "ORDER BY " +
             "H.FNAME")
     List<Object[]> getAllStorage();
 }