From ecaf4416474233c595ca6c3aadf7ff9d02e40823 Mon Sep 17 00:00:00 2001 From: Jason Nemecek Date: Mon, 15 Apr 2024 11:48:59 -0600 Subject: [PATCH] Make Valid MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit . We have a version of the CART query that we can run in SSMS against SSMS. It’s essentially same query as what CART sends to SDM through SDA but it’s formatted to run in SSMS. I say essentially because there could have been minor changes since we created this SSMS formatted version last June. Anyway, Amar added this bit of code on lines 573 and 574 and the query now works in SSMS now. We run it directly against the PROD SDM snapshot database, which is what CART hits with the SDA post rest service. --- SQL-Library/AOI-Aggregate stability.sql | 2 +- .../CART_SoilsQuery_20210922SSMS_EDT.sql | 2877 ++++++++++++++++ SQL-Library/CART_SoilsQuery_20240415.sql | 2910 +++++++++++++++++ ...SoilsQuery_kitchensink_20210927SDA_EDT.sql | 2755 ++++++++++++++++ chapters/EditedRMD/EditedRMD/.Rhistory | 0 .../CART_Soil_Data_Access_Domains.html | 1606 +++++++++ ...FY24 CART Resource Concern Assessment.docx | Bin 0 -> 833473 bytes ...~$24 CART Resource Concern Assessment.docx | Bin 0 -> 162 bytes documents/~$A-abstract-DSS-big-data-CART.docx | Bin 0 -> 162 bytes ...ervation Planning Activities_20221114.docx | Bin 0 -> 162 bytes 10 files changed, 10149 insertions(+), 1 deletion(-) create mode 100644 SQL-Library/CART_SoilsQuery_20210922SSMS_EDT.sql create mode 100644 SQL-Library/CART_SoilsQuery_20240415.sql create mode 100644 SQL-Library/CART_SoilsQuery_kitchensink_20210927SDA_EDT.sql create mode 100644 chapters/EditedRMD/EditedRMD/.Rhistory create mode 100644 chapters/EditedRMD/EditedRMD/CART_Soil_Data_Access_Domains.html create mode 100644 documents/FY24 CART Resource Concern Assessment.docx create mode 100644 documents/~$24 CART Resource Concern Assessment.docx create mode 100644 documents/~$A-abstract-DSS-big-data-CART.docx create mode 100644 documents/~$tomating Soils Information (SSURGO) into Conservation Planning Activities_20221114.docx diff --git a/SQL-Library/AOI-Aggregate stability.sql b/SQL-Library/AOI-Aggregate stability.sql index 1b8c537..5a9b8aa 100644 --- a/SQL-Library/AOI-Aggregate stability.sql +++ b/SQL-Library/AOI-Aggregate stability.sql @@ -562,7 +562,7 @@ SELECT DISTINCT aoiid , landunit, mukey, -mapunit_acres, +--mapunit_acres, mu_pct_sum, --AgStab_l , --AgStab_r , diff --git a/SQL-Library/CART_SoilsQuery_20210922SSMS_EDT.sql b/SQL-Library/CART_SoilsQuery_20210922SSMS_EDT.sql new file mode 100644 index 0000000..142780c --- /dev/null +++ b/SQL-Library/CART_SoilsQuery_20210922SSMS_EDT.sql @@ -0,0 +1,2877 @@ +-- 2021-09-27 EDIT T15:35:41 + +/** SDA Query application="CART" rule="Generalized Resource Assessment - September 2021" version="FY22" **/ +-- Fixed 'Farm Land Class' query - return 0 instead on 'not rated' ; Susan McGlasson ; 05/31/2023 +-- Updated Soil Organic Carbon Stock Domain and added Hydric Easements to Air Quality 09/27/2021 +-- Includes Air Quality 09/23/2021 +-- Limitations for Aerobic Soil Organisms 8/2021 + + + +-- BEGIN CREATING AOI QUERY +-- +USE sdm +GO +DROP TABLE IF EXISTS #AoiTable +DROP TABLE IF EXISTS #AoiAcres +DROP TABLE IF EXISTS #AoiSoils +DROP TABLE IF EXISTS #AoiSoils2 +DROP TABLE IF EXISTS #M2 +DROP TABLE IF EXISTS #M5 +DROP TABLE IF EXISTS #M4 +DROP TABLE IF EXISTS #M6 +DROP TABLE IF EXISTS #M8 +DROP TABLE IF EXISTS #M10 +DROP TABLE IF EXISTS #InterpTable +DROP TABLE IF EXISTS #LandunitRatingsDetailed +DROP TABLE IF EXISTS #LandunitRatingsCART +DROP TABLE IF EXISTS #SDV +DROP TABLE IF EXISTS #RatingClasses +DROP TABLE IF EXISTS #RatingDomain +DROP TABLE IF EXISTS #DateStamps +DROP TABLE IF EXISTS #LandunitMetadata +DROP TABLE IF EXISTS #LandunitRatingsDetailed1 +DROP TABLE IF EXISTS #LandunitRatingsDetailed2 +DROP TABLE IF EXISTS #LandunitRatingsCART2 +DROP TABLE IF EXISTS #interp_dcd +DROP TABLE IF EXISTS #Hydric2 +DROP TABLE IF EXISTS #Hydric3 +DROP TABLE IF EXISTS #Hydric_A +DROP TABLE IF EXISTS #Hydric_B +DROP TABLE IF EXISTS #Hydric1 +DROP TABLE IF EXISTS #Hydric3 +DROP TABLE IF EXISTS #easHydric3 +DROP TABLE IF EXISTS #drain3 +DROP TABLE IF EXISTS #drain4 +DROP TABLE IF EXISTS #FC +DROP TABLE IF EXISTS #FC2 +DROP TABLE IF EXISTS #wet +DROP TABLE IF EXISTS #wet1 +DROP TABLE IF EXISTS #wet2 +DROP TABLE IF EXISTS #pf +DROP TABLE IF EXISTS #pf1 +DROP TABLE IF EXISTS #pf2 +DROP TABLE IF EXISTS #agg1 +DROP TABLE IF EXISTS #agg2 +DROP TABLE IF EXISTS #agg3 +DROP TABLE IF EXISTS #agg4 +DROP TABLE IF EXISTS #agg5 +DROP TABLE IF EXISTS #agg6 +DROP TABLE IF EXISTS #agg7 +DROP TABLE IF EXISTS #agg7a +DROP TABLE IF EXISTS #agg8 +DROP TABLE IF EXISTS #acpf +DROP TABLE IF EXISTS #muacpf +DROP TABLE IF EXISTS #SOC5 +DROP TABLE IF EXISTS #hortopdepth +DROP TABLE IF EXISTS #acpf2 +DROP TABLE IF EXISTS #acpfhzn +DROP TABLE IF EXISTS #SOC +DROP TABLE IF EXISTS #SOC2 +DROP TABLE IF EXISTS #SOC3 +DROP TABLE IF EXISTS #SOC4 +DROP TABLE IF EXISTS #SOC5 +DROP TABLE IF EXISTS #SOC6 +DROP TABLE IF EXISTS #acpfaws +DROP TABLE IF EXISTS #hortopdepthaws +DROP TABLE IF EXISTS #acpf2aws +DROP TABLE IF EXISTS #acpfhznaws +DROP TABLE IF EXISTS #aws +DROP TABLE IF EXISTS #aws150 +DROP TABLE IF EXISTS #acpf3aws +DROP TABLE IF EXISTS #acpf4aws +DROP TABLE IF EXISTS #depthtestaws +DROP TABLE IF EXISTS #acpfwtavgaws +DROP TABLE IF EXISTS #alldata +DROP TABLE IF EXISTS #alldata2 +DROP TABLE IF EXISTS #aws1 +DROP TABLE IF EXISTS #drain +DROP TABLE IF EXISTS #drain2 +DROP TABLE IF EXISTS #organic +DROP TABLE IF EXISTS #o1 + +GO + + DECLARE @attributeName CHAR(60); + DECLARE @ruleDesign CHAR(60); + DECLARE @ruleKey CHAR(30); + DECLARE @rating1 CHAR(60); + DECLARE @rating2 CHAR(60); + DECLARE @rating3 CHAR(60); + DECLARE @rating4 CHAR(60); + DECLARE @rating5 CHAR(60); + DECLARE @rating6 CHAR(60); + DECLARE @dateStamp VARCHAR(60); + DECLARE @minAcres INT ; + DECLARE @minPct INT ; + DECLARE @aoiGeom Geometry; + DECLARE @aoiGeomFixed Geometry; + DECLARE @ratingKey CHAR(70); + DECLARE @notRatedPhrase CHAR(15); + DECLARE @Level INT ; + DECLARE @pAoiId INT ; + declare @intersectedPolygonGeometries table (id int, geom geometry); + declare @intersectedPolygonGeographies table (id int, geog geography); +-- Declare all variables here +--|~DeclareChar(@attributeName,60)~ +--|~DeclareChar(@ruleDesign,60)~ +--|~DeclareChar(@ruleKey,30)~ +--|~DeclareChar(@rating1,60)~ +--|~DeclareChar(@rating2,60)~ +--|~DeclareChar(@rating3,60)~ +--|~DeclareChar(@rating4,60)~ +--|~DeclareChar(@rating5,60)~ +--|~DeclareChar(@rating6,60)~ +--|~DeclareVarchar(@dateStamp,20)~ +--|~DeclareInt(@minAcres)~ +--|~DeclareInt(@minPct)~ +--|~DeclareGeometry(@aoiGeom)~ +--|~DeclareGeometry(@aoiGeomFixed)~ +--|~DeclareChar(@ratingKey,70)~ +--|~DeclareChar(@notRatedPhrase,15)~ +--|~DeclareInt(@Level)~ + +-- Create AOI table with polygon geometry. Coordinate system must be WGS1984 (EPSG 4326) +CREATE TABLE #AoiTable + ( aoiid INT IDENTITY (1,1), + landunit CHAR(20), + aoigeom GEOMETRY ) +; + +-- Insert identifier string and WKT geometry for each AOI polygon after this... + +SELECT @aoiGeom = GEOMETRY::STGeomFromText('MULTIPOLYGON (((-102.1334674808154 45.944646056283148, -102.1305452386178 45.944662550781629, -102.1250676378794 45.944693468635933, -102.12327175652177 45.944703605814198, -102.12327765248887 45.945772183298914, -102.12330205474188 45.950193894213385, -102.1233054191124 45.950803657359927, -102.12331516688346 45.952569931178118, -102.1233221258513 45.953831080876398, -102.12333600511613 45.956345988730334, -102.1233516074854 45.959173207471792, -102.12459804964163 45.959178487402028, -102.12670803513845 45.959187427580332, -102.13299778465881 45.959214074545628, -102.13341500616872 45.959215842616345, -102.13402890980223 45.959218443460884, -102.13402774158055 45.959111884377819, -102.13401199262148 45.957674528361167, -102.13400912287909 45.957412604789681, -102.13398283564328 45.955013506463786, -102.13397232704421 45.954054476515239, -102.13393392411768 45.950549610965993, -102.13391513994065 45.948835142697533, -102.13390800470529 45.948184012453055, -102.13389569296197 45.947060215585338, -102.13386963505371 45.944681989666435, -102.13386921596879 45.944643788188387, -102.1334674808154 45.944646056283148)))', 4326); +SELECT @aoiGeomFixed = @aoiGeom.MakeValid().STUnion(@aoiGeom.STStartPoint()); +INSERT INTO #AoiTable ( landunit, aoigeom ) +VALUES ('T9981 Fld3', @aoiGeomFixed); +SELECT @aoiGeom = GEOMETRY::STGeomFromText('MULTIPOLYGON (((-102.12136920366567 45.944704870263536, -102.11670730943416 45.944707968434159, -102.1128892282776 45.944710505426713, -102.11289951024708 45.945739429924686, -102.11291126351028 45.946915639385679, -102.11291860469078 45.947650380666801, -102.11295289231145 45.951081605982836, -102.11297119355163 45.952912994444262, -102.11302630231779 45.95842807180577, -102.11303364349828 45.959162795100383, -102.11314107672411 45.959162904817845, -102.1217964112675 45.959171637252325, -102.12300556925601 45.959172857634769, -102.1233516074854 45.959173207471792, -102.12333600511613 45.956345988730334, -102.1233221258513 45.953831080876398, -102.12331516688346 45.952569931178118, -102.1233054191124 45.950803657359927, -102.12330205474188 45.950193894213385, -102.12327765248887 45.945772183298914, -102.12327175652177 45.944703605814198, -102.12136920366567 45.944704870263536)))', 4326); +SELECT @aoiGeomFixed = @aoiGeom.MakeValid().STUnion(@aoiGeom.STStartPoint()); +INSERT INTO #AoiTable ( landunit, aoigeom ) +VALUES ('T9981 Fld4', @aoiGeomFixed); + +-- End of AOI geometry section + +-- #AoiAcres table to contain summary acres for each landunit +CREATE TABLE #AoiAcres + ( aoiid INT, + landunit CHAR(20), + landunit_acres FLOAT ) +; + +-- #LandunitRatingsDetailed1 table +CREATE TABLE #LandunitRatingsDetailed1 + ( aoiid INT, + landunit CHAR(20), + attributename CHAR(60), + rating_class CHAR(60), + rating_value INT, + rating_key CHAR(60), + rating_pct FLOAT, + rating_acres FLOAT, + landunit_acres FLOAT ) +; + +-- #LandunitRatingsDetailed2 table +CREATE TABLE #LandunitRatingsDetailed2 + (landunit CHAR(20), + attributename CHAR(60), + rating_class CHAR(60), + rating_value INT, + rating_key CHAR(60), + rating_pct FLOAT, + rating_acres FLOAT, + landunit_acres FLOAT, + rolling_pct FLOAT, + rolling_acres FLOAT ) +; + +-- #LandunitRatingsCART table +CREATE TABLE #LandunitRatingsCART + (id INT, + landunit CHAR(20), + attributename CHAR(60), + rating_class CHAR(60), + rating_value INT, + rating_key CHAR(60), + rolling_pct FLOAT, + rolling_acres FLOAT, + landunit_acres FLOAT ) +; + +-- #LandunitRatingsCART2 table +-- This table will only contain the final, overall ratings for CART +CREATE TABLE #LandunitRatingsCART2 + (id INT IDENTITY (1,1), + landunit CHAR(20), + attributename CHAR(60), + rating_class CHAR(60), + rating_key CHAR(60), + rating_value INT, -- Need to change to rating_value + rolling_pct FLOAT, + rolling_acres FLOAT, + landunit_acres FLOAT, + soils_metadata VARCHAR(150) ) +; + +-- #AoiSoils table contains intersected soil polygon table with geometry +CREATE TABLE #AoiSoils + ( polyid INT IDENTITY (1,1), + aoiid INT, + landunit CHAR(20), + mukey INT, + soilgeom GEOMETRY ) +; + +-- #AoiSoils2 table contains Soil geometry with landunits +CREATE TABLE #AoiSoils2 + ( aoiid INT, + polyid INT, + landunit CHAR(20), + mukey INT, + poly_acres FLOAT, + soilgeog GEOGRAPHY ) +; + +-- #M2 table contains Soil map unit acres, aggregated by mukey (merges polygons together) +CREATE TABLE #M2 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT ) +; + +-- #FC table contains Soil map unit acres, aggregated by mukey Farm Class +CREATE TABLE #FC + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + farmlndclass CHAR(30), + farmlndclassvalue INT, + landunit_acres FLOAT ) +; + + +CREATE TABLE #FC2 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + farmlndclass CHAR(30), + farmlndclassvalue INT, + landunit_acres FLOAT, + farmac_pct REAL, + farm_ac_sum REAL, + farmac_sum_pct INT + ) +; + + +-- #M4 table contains Component level data with cokey, comppct_r and mapunit sum-of-comppct_r (major components only) +CREATE TABLE #M4 +( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + cokey INT, + compname CHAR(60), + comppct_r INT, + majcompflag CHAR(3), + mu_pct_sum INT, + major_mu_pct_sum INT, + drainagecl CHAR(254) + ); + +-- #M5 table contains Component level ratings for the currently selected soil interpretation +CREATE TABLE #M5 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + cokey INT, + compname CHAR(60), + comppct_r INT, + rating_class CHAR(60), + mu_pct_sum INT ) +; + +-- #M6 table contains Component level ratings with adjusted component percent to account for missing minor components +CREATE TABLE #M6 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + cokey INT, + compname CHAR(60), + comppct_r INT, + rating_class CHAR(60), + mu_pct_sum INT, + adj_comp_pct FLOAT ) +; + +-- #M8 table contains Component acres by multiplying map unit acres with adjusted component percent +CREATE TABLE #M8 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + cokey INT, + compname CHAR(60), + comppct_r INT, + rating_class CHAR(60), + MU_pct_sum INT, + adj_comp_pct FLOAT, + co_acres FLOAT ) +; + +-- #M10 table contains Aggregated rating class values and sum of component acres by landunit (Tract and Field number) +CREATE TABLE #M10 + ( landunit CHAR(20), + rating_class CHAR(60), + rating_acres FLOAT ) +; + +-- Hydric table contains soils at the Map Unit, using all map units from table #M2. +CREATE TABLE #Hydric1 + (mukey INT, + comp_count INT, -- cnt_comp + count_maj_comp INT, -- cnt_mjr + all_hydric INT, -- cnt_hydric + all_not_hydric INT, -- cnt_nonhydric + maj_hydric INT, -- cnt_mjr_hydric + maj_not_hydric INT, -- cnt_mjr_nonhydric + hydric_inclusions INT, -- cnt_minor_hydric + hydric_null INT ) -- cnt_null_hydric +; + +-- #Hydric2 table contains the Low, Rv, and High range for Hydric +CREATE TABLE #Hydric2 + (mukey INT, + hydric_rating CHAR (25), + low_pct FLOAT, + rv_pct FLOAT, + high_pct FLOAT ) +; + +-- #Hydric3 table contains hydric rating acres +CREATE TABLE #Hydric3 + (aoiid INT, + landunit CHAR(20), + attributename CHAR(60), + AOI_Acres FLOAT, + rating_class CHAR(60), + rating_key CHAR(60), + mukey INT, + hydric_flag INT, + low_acres FLOAT, + rv_acres FLOAT, + high_acres FLOAT ) +; + +-- #Easments Hydric3 table contains hydric rating acres +CREATE TABLE #easHydric3 + (aoiid INT, + landunit CHAR(20), + attributename CHAR(60), + AOI_Acres FLOAT, + rating_class CHAR(60), + rating_key CHAR(60), + mukey INT, + hydric_flag INT, + low_acres FLOAT, + rv_acres FLOAT, + high_acres FLOAT, + lowpct REAL , rvpct REAL, highpct REAL ) +; + + +-- Identify all hydric components by map unit, using table #M4. +--CREATE TABLE #Hydric_A + -- (mukey INT, + -- cokey INT, + -- hydric_pct INT ) +--; + +-- Hydric soils at the mapunit level, using all components where hydricrating = 'Yes'. +--CREATE TABLE #Hydric_B + -- (mukey INT, + -- hydric_pct INT ) +--; + +-- #SDV table contains rule settings from sdvattribute table +CREATE TABLE #SDV + (attributekey BIGINT, + attributename CHAR(60), + attributetablename CHAR(30), + attributecolumnname CHAR(30), + attributelogicaldatatype CHAR(20), + attributefieldsize SMALLINT, + attributeprecision TINYINT, + attributedescription NVARCHAR(MAX), + attributeuom NVARCHAR(60), + attributeuomabbrev NVARCHAR(30), + attributetype CHAR(20), + nasisrulename CHAR(60), + ruledesign NVARCHAR(60), + notratedphrase CHAR(15), + mapunitlevelattribflag TINYINT, + complevelattribflag TINYINT, + cmonthlevelattribflag TINYINT, + horzlevelattribflag TINYINT, + tiebreakdomainname CHAR(40), + tiebreakruleoptionflag TINYINT, + tiebreaklowlabel CHAR(20), + tiebreakhighlabel CHAR(20), + tiebreakrule SMALLINT, + resultcolumnname CHAR(10), + sqlwhereclause CHAR(255), + primaryconcolname CHAR(30), + pcclogicaldatatype CHAR(20), + primaryconstraintlabel CHAR(30), + secondaryconcolname CHAR(30), + scclogicaldatatype CHAR(20), + secondaryconstraintlabel CHAR(30), + dqmodeoptionflag TINYINT, + depthqualifiermode CHAR(20), + layerdepthtotop FLOAT, + layerdepthtobottom FLOAT, + layerdepthuom CHAR(20), + monthrangeoptionflag TINYINT, + beginningmonth CHAR(9), + endingmonth CHAR(9), + horzaggmeth CHAR(30), + interpnullsaszerooptionflag TINYINT, + interpnullsaszeroflag TINYINT, + nullratingreplacementvalue CHAR(254), + basicmodeflag TINYINT, + maplegendkey SMALLINT, + maplegendclasses TINYINT, + maplegendxml XML, + nasissiteid BIGINT, + wlupdated DATETIME, + algorithmname CHAR(50), + componentpercentcutoff TINYINT, + readytodistribute TINYINT, + effectivelogicaldatatype CHAR(20), + rulekey CHAR(30) ) +; + +-- #RatingClasses table contains the first six rating classes for each interp +CREATE TABLE #RatingClasses + (attributename CHAR(60), + ruledesign CHAR(60), + rating1 CHAR(60), + rating2 CHAR(60), + rating3 CHAR(60), + rating4 CHAR(60), + rating5 CHAR(60), + rating6 CHAR(60) ) +; + +-- #RatingDomain table containing the domain values for each CART rating for each interp +CREATE TABLE #RatingDomain + (id INT IDENTITY (1,1), + rating_key CHAR(60), + attributename CHAR(60), + rating_class CHAR(60), + rating_value INT ) +; + +-- #DateStamps table to store survey area datestamps (sacatalog.saverest) +CREATE TABLE #DateStamps + (landunit CHAR(20), + datestamp VARCHAR(32) ) +; + +-- #LandunitMetadata table to store landunit metadata (survey area and saverest) which comes from #DateStamps +CREATE TABLE #LandunitMetadata + (landunit CHAR(20), + soils_metadata VARCHAR(150) ) +; + +-- End of CREATE TABLE section + +-- Populate #SDV with interp metadata +INSERT INTO #SDV (attributename, attributecolumnname, attributelogicaldatatype, attributetype, + attributeuom, nasisrulename, rulekey, ruledesign, notratedphrase, resultcolumnname, + effectivelogicaldatatype, attributefieldsize, maplegendxml, maplegendkey, attributedescription, + sqlwhereclause, secondaryconcolname, tiebreaklowlabel, tiebreakhighlabel) + SELECT sdv.attributename, sdv.attributecolumnname, sdv.attributelogicaldatatype, sdv.attributetype, + sdv.attributeuom, sdv.nasisrulename, md.rulekey, md.ruledesign, sdv.notratedphrase, sdv.resultcolumnname, + sdv.effectivelogicaldatatype, sdv.attributefieldsize, sdv.maplegendxml, sdv.maplegendkey, sdv.attributedescription, + sdv.sqlwhereclause, sdv.secondaryconcolname,tiebreaklowlabel, tiebreakhighlabel + FROM sdvattribute sdv + LEFT OUTER JOIN distinterpmd md ON sdv.nasisrulename = md.rulename + WHERE sdv.attributename IN ('Agricultural Organic Soil Subsidence', 'Soil Susceptibility to Compaction', 'Organic Matter Depletion', 'Surface Salt Concentration', 'Limitations for Aerobic Soil Organisms', 'Hydric Rating by Map Unit') + GROUP BY md.rulekey, sdv.attributename, sdv.attributecolumnname, sdv.attributelogicaldatatype, sdv.attributetype, sdv.attributeuom, sdv.nasisrulename, sdv.resultcolumnname, sdv.effectivelogicaldatatype, + sdv.attributefieldsize, md.ruledesign, sdv.notratedphrase, sdv.maplegendxml, sdv.maplegendkey, sdv.attributedescription, sqlwhereclause, secondaryconcolname, tiebreaklowlabel, tiebreakhighlabel +; + +-- Populate #AoiAcres table +INSERT INTO #AoiAcres (aoiid, landunit, landunit_acres ) + SELECT aoiid, landunit, + SUM( ROUND( ( ( GEOGRAPHY::STGeomFromWKB(aoigeom.STAsBinary(), 4326 ).STArea() ) / 4046.8564224 ), 3 ) ) AS landunit_acres + FROM #AoiTable + GROUP BY aoiid, landunit +; + +-- Populate #AoiSoils table with intersected soil polygon geometry +INSERT INTO #AoiSoils (aoiid, landunit, mukey, soilgeom) + SELECT A.aoiid, A.landunit, M.mukey, M.mupolygongeo.STIntersection(A.aoigeom ) AS soilgeom + FROM mupolygon M, #AoiTable A + WHERE mupolygongeo.STIntersects(A.aoigeom) = 1 +; + +-- Populate #AoiSoils2 Soil geometry with landunit attribute +INSERT INTO #AoiSoils2 + SELECT aoiid, polyid, landunit, mukey, ROUND((( GEOGRAPHY::STGeomFromWKB(soilgeom.STAsBinary(), 4326 ).STArea() ) / 4046.8564224 ), 3 ) AS poly_acres, GEOGRAPHY::STGeomFromWKB(soilgeom.STAsBinary(), 4326 ) AS soilgeog + FROM #AoiSoils +; + +-- Populate #M2 soil map unit acres, aggregated by mukey (merges polygons together) +INSERT INTO #M2 + SELECT DISTINCT M1.aoiid, M1.landunit, M1.mukey, + ROUND (SUM (M1.poly_acres) OVER(PARTITION BY M1.landunit, M1.mukey), 3) AS mapunit_acres + FROM #AoiSoils2 AS M1 + GROUP BY M1.aoiid, M1.landunit, M1.mukey, M1.poly_acres +; + +-- Populate #FC table with Farm Land Class +INSERT INTO #FC + SELECT fcc.aoiid, fcc.landunit, mu.mukey, mapunit_acres, + CASE WHEN farmlndcl IS NULL THEN 'Not rated' + WHEN farmlndcl = 'All areas are prime farmland' THEN 'Prime' + WHEN farmlndcl LIKE 'Prime farmland if%' THEN 'Prime if' + WHEN farmlndcl = 'Farmland of statewide importance' THEN 'State' + WHEN farmlndcl LIKE 'Farmland of statewide importance, if%' THEN 'State if' + WHEN farmlndcl = 'Farmland of local importance' THEN 'Local' + WHEN farmlndcl LIKE 'Farmland of local importance, if%' THEN 'Local if' + WHEN farmlndcl = 'Farmland of unique importance' THEN 'Unique' + ELSE 'Not Prime' + END AS farmlndclass, + CASE WHEN farmlndcl IS NULL THEN 0 + WHEN farmlndcl = 'All areas are prime farmland' THEN 1 + WHEN farmlndcl LIKE 'Prime farmland if%' THEN 1 + WHEN farmlndcl = 'Farmland of statewide importance' THEN 1 + WHEN farmlndcl LIKE 'Farmland of statewide importance, if%' THEN 1 + WHEN farmlndcl = 'Farmland of local importance' THEN 1 + WHEN farmlndcl LIKE 'Farmland of local importance, if%' THEN 1 + WHEN farmlndcl = 'Farmland of unique importance' THEN 1 + ELSE 0 + END AS farmlndclassvalue, landunit_acres + FROM #M2 AS fcc + INNER JOIN mapunit AS mu ON mu.mukey = fcc.mukey + INNER JOIN #AoiAcres ON #AoiAcres.aoiid=fcc.aoiid +; + +INSERT INTO #FC2 +SELECT aoiid, landunit, mukey, mapunit_acres, farmlndclass, farmlndclassvalue, landunit_acres, CASE WHEN mapunit_acres = 0 THEN 0 WHEN landunit_acres = 0 THEN 0 ELSE + ROUND ((mapunit_acres / landunit_acres) * 100.0, 2) END AS farmac_pct, SUM (mapunit_acres) OVER(PARTITION BY landunit) AS farm_ac_sum, ROUND (SUM ((mapunit_acres / landunit_acres) * 100.0) OVER(PARTITION BY landunit), 0) AS farmac_sum_pct +FROM #FC +WHERE farmlndclassvalue = 1 + +-- Enviromental Assessment +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #FC2.landunit, 'Farm Class' AS attributename, +CASE WHEN farm_ac_sum > 0 THEN 1 ELSE 0 END AS rating_value, CASE WHEN farm_ac_sum > 0 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #AoiAcres +LEFT OUTER JOIN #FC2 ON #AoiAcres.aoiid=#FC2.aoiid +; + + +-- Easements +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #FC2.landunit, 'Easements Farm Class' AS attributename, +CASE WHEN farmac_sum_pct >= 50 THEN 1 ELSE 0 END AS rating_value, CASE WHEN farmac_sum_pct>= 50 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #AoiAcres +LEFT OUTER JOIN #FC2 ON #AoiAcres.aoiid=#FC2.aoiid +; + + + +-- Populate #M4 table with component level data with cokey, comppct_r and mapunit sum-of-comppct_r +INSERT INTO #M4 +SELECT M2.aoiid, M2.landunit, M2.mukey, mapunit_acres, CO.cokey, CO.compname, CO.comppct_r, CO.majcompflag, +SUM (CO.comppct_r) OVER(PARTITION BY M2.landunit, M2.mukey) AS mu_pct_sum, (SELECT SUM (CCO.comppct_r) +FROM #M2 AS MM2 +INNER JOIN component AS CCO ON CCO.mukey = MM2.mukey AND M2.mukey = MM2.mukey AND majcompflag = 'Yes' AND M2.landunit = MM2.landunit) AS major_mu_pct_sum, +drainagecl +FROM #M2 AS M2 +INNER JOIN component AS CO ON CO.mukey = M2.mukey +GROUP BY M2.aoiid, M2.landunit, M2.mukey, mapunit_acres, CO.cokey, CO.compname, CO.comppct_r, CO.majcompflag, drainagecl +; + +-- Populate #DateStamps with survey area dates for all soil mapunits involved +INSERT INTO #DateStamps + SELECT DISTINCT AM.landunit, ([SC].[areasymbol] + ' ' + CONVERT(VARCHAR(32),[SC].[saverest],120) ) AS datestamp + FROM #M4 AM + INNER JOIN mapunit Mu ON AM.mukey = Mu.mukey + INNER JOIN legend LG ON Mu.lkey = LG.lkey + INNER JOIN sacatalog SC ON Lg.areasymbol = SC.areasymbol +; + +-- Populate #LandunitMetadata table with landunit soils-metadata +-- +INSERT INTO #LandunitMetadata + SELECT DISTINCT + landunit, + STUFF((SELECT ' | ' + CAST([datestamp] AS VARCHAR(30)) + FROM #DateStamps dt2 + WHERE dt1.landunit = dt2.landunit + FOR XML PATH ('') ), 1, 2, '') AS soils_metadata + FROM #DateStamps dt1 +; + +-- END OF STATIC SECTION +-- ************************************************************************************************ + + +-- BEGIN QUERIES FOR SOIL PROPERTIES... +-- ************************************************************************************************ + +---- START DRAINAGE CLASS------------ +CREATE TABLE #drain +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(280), +comppct_r INT, +majcompflag CHAR(4), +mu_pct_sum INT, +major_mu_pct_sum INT, +drainagecl CHAR(40), +adj_comp_pct DECIMAL (6, 2) +) +; + +INSERT INTO #drain +SELECT #M4.aoiid, #M4.landunit, #AoiAcres.landunit_acres, mukey, mapunit_acres, cokey, compname, +comppct_r, majcompflag, mu_pct_sum, major_mu_pct_sum, drainagecl, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M4 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #M4.aoiid +; + +CREATE TABLE #drain2 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(280), +comppct_r INT, +majcompflag CHAR(4), +mu_pct_sum INT, +drainagecl CHAR(40), +adj_comp_pct DECIMAL (6, 2), +co_acres DECIMAL (10, 2)) +; + +-- Populate drainage class for mapunit and components +INSERT INTO #drain2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, compname, comppct_r, +majcompflag, mu_pct_sum, drainagecl, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 2) AS co_acres +FROM #drain +; + + +CREATE TABLE #drain3 +( aoiid INT , +landunit CHAR(20), +landunit_acres REAL, +sum_drain_ac REAL) +; +INSERT INTO #drain3 (aoiid, landunit, landunit_acres, sum_drain_ac ) +SELECT DISTINCT aoiid , +landunit , +landunit_acres , +SUM (CASE WHEN drainagecl = 'Poorly drained' THEN co_acres +WHEN drainagecl = 'Very poorly drained' THEN co_acres ELSE 0 END) over(partition by aoiid) as sum_drain_ac +FROM #drain2; + +CREATE TABLE #drain4 +( aoiid INT , +landunit CHAR(20), +landunit_acres REAL, +drain_pct REAL) +; +INSERT INTO #drain4 (aoiid, landunit, landunit_acres, drain_pct ) +SELECT aoiid, landunit, landunit_acres, CASE WHEN sum_drain_ac = 0 THEN 0 ELSE sum_drain_ac/landunit_acres END AS drain_pct +FROM #drain3; + + +-- Easement Drainage End +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Easements Drainage' AS attributename, +CASE WHEN drain_pct >= .50 THEN 1 ELSE 0 END AS rating_value, +CASE WHEN drain_pct >= .50 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #drain4 ; + +; + +-- Begin SOC +CREATE TABLE #acpf +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +awc_r FLOAT, +restrictiondepth INT, +restrictiodepth INT, +TOPrestriction CHAR(80), +tcl CHAR(40), +thickness INT, +om_r FLOAT, +dbthirdbar_r FLOAT, +fragvol INT, +texture CHAR(40), +chkey INT, +mu_pct_sum INT) +; + +INSERT INTO #acpf +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +MA44.cokey, +MA44.compname, +MA44.comppct_r, +MA44.majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +awc_r , +(SELECT CAST(MIN(resdept_r) AS INTEGER) FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND reskind IS NOT NULL) AS restrictiondepth, +(SELECT CASE WHEN MIN (resdept_r) IS NULL THEN 200 ELSE CAST (MIN (resdept_r) AS INT) END FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND reskind IS NOT NULL) AS restrictiodepth, +(SELECT TOP 1 reskind FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND corestrictions.reskind IN ('Lithic bedrock','Duripan', 'Densic bedrock', 'Paralithic bedrock', 'Fragipan', 'Natric', 'Ortstein', 'Permafrost', 'Petrocalcic', 'Petrogypsic') +AND reskind IS NOT NULL ORDER BY resdept_r) AS TOPrestriction, +(SELECT TOP 1 texcl FROM chtexturegrp AS chtg INNER JOIN chtexture AS cht ON chtg.chtgkey=cht.chtgkey AND chtg.rvindicator = 'yes' AND chtg.chkey=cha.chkey) AS tcl, +CASE WHEN (hzdepb_r-hzdept_r) IS NULL THEN 0 ELSE CAST((hzdepb_r - hzdept_r) AS INT) END AS thickness, +CASE WHEN texture LIKE '%PM%' AND (om_r) IS NULL THEN 35 +WHEN texture LIKE '%MUCK%' AND (om_r) IS NULL THEN 35 +WHEN texture LIKE '%PEAT%' AND (om_r) IS NULL THEN 35 ELSE om_r END AS om_r , +CASE WHEN texture LIKE '%PM%' AND (dbthirdbar_r) IS NULL THEN 0.25 +WHEN texture LIKE '%MUCK%' AND (dbthirdbar_r) IS NULL THEN 0.25 +WHEN texture LIKE '%PEAT%' AND (dbthirdbar_r) IS NULL THEN 0.25 ELSE dbthirdbar_r END AS dbthirdbar_r, +(SELECT CASE WHEN SUM (cf.fragvol_r) IS NULL THEN 0 ELSE CAST (SUM(cf.fragvol_r) AS INT) END FROM chfrags cf WHERE cf.chkey = cha.chkey) as fragvol, +texture, +cha.chkey, +mu_pct_sum +FROM (#M4 AS MA44 INNER JOIN (component AS coa INNER JOIN chorizon AS cha ON cha.cokey = coa.cokey ) ON MA44.cokey=coa.cokey AND MA44.majcompflag = 'yes' ) +LEFT OUTER JOIN chtexturegrp AS ct ON cha.chkey=ct.chkey and ct.rvindicator = 'yes' +and CASE WHEN hzdept_r IS NULL THEN 2 +WHEN texture LIKE '%PM%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%MUCK%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%PEAT%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%PM%' AND dbthirdbar_r IS NULL THEN 1 +WHEN texture LIKE '%MUCK%' AND dbthirdbar_r IS NULL THEN 1 +WHEN texture LIKE '%PEAT%' AND dbthirdbar_r IS NULL THEN 1 +WHEN om_r IS NULL THEN 2 +WHEN om_r = 0 THEN 2 +WHEN dbthirdbar_r IS NULL THEN 2 +WHEN dbthirdbar_r = 0 THEN 2 +ELSE 1 END = 1 +; + +-- Sums the Component Percent and eliminate duplicate values by cokey +SELECT landunit, aoiid, mapunit_acres , mukey, cokey, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +INTO #muacpf +FROM #acpf AS acpf2 +WHERE acpf2.cokey=cokey +GROUP BY landunit, aoiid, mapunit_acres , mukey, cokey, comppct_r, mu_pct_sum +; + +-- grab top depth for the mineral soil and will use it later to get mineral surface properties +-- Because of SOC this wasnt really needed. If any error add statement below back +SELECT compname, cokey, MIN(hzdept_r) AS min_t +INTO #hortopdepth +FROM #acpf +---WHERE texture NOT LIKE '%PM%' and texture NOT LIKE '%DOM' and texture NOT LIKE '%MPT%' AND texture NOT LIKE '%MUCK' AND texture NOT LIKE '%PEAT%' +GROUP BY cokey, compname +; + +-- Combine the mineral surface to grab surface mineral properties +SELECT #hortopdepth.cokey, +hzname, +hzdept_r, +hzdepb_r, +thickness, +texture AS texture_surf, +om_r AS om_surf, +dbthirdbar_r AS db_surf, +fragvol AS frag_surf, +chkey +INTO #acpf2 +FROM #hortopdepth +INNER JOIN #acpf on #hortopdepth.cokey=#acpf.cokey AND #hortopdepth.min_t = #acpf.hzdept_r +ORDER BY #hortopdepth.cokey, hzname +; + +SELECT +mukey, +cokey, +hzname, +restrictiodepth, +hzdept_r, +hzdepb_r, +CASE WHEN (hzdepb_r-hzdept_r) IS NULL THEN 0 ELSE CAST ((hzdepb_r - hzdept_r) AS INT) END AS thickness, +texture, +CASE WHEN dbthirdbar_r IS NULL THEN 0 ELSE dbthirdbar_r END AS dbthirdbar_r, +CASE WHEN fragvol IS NULL THEN 0 ELSE fragvol END AS fragvol, +CASE when om_r IS NULL THEN 0 ELSE om_r END AS om_r, +chkey +INTO #acpfhzn +FROM #acpf +; + +--- Depth ranges for SOC ---- +SELECT hzname, chkey, comppct_r, hzdept_r, hzdepb_r, thickness, +CASE WHEN hzdept_r < 150 then hzdept_r ELSE 0 END AS InRangeTop_0_150, +CASE WHEN hzdepb_r <= 150 THEN hzdepb_r WHEN hzdepb_r > 150 and hzdept_r < 150 THEN 150 ELSE 0 END AS InRangeBot_0_150, +CASE WHEN hzdept_r < 5 then hzdept_r ELSE 0 END AS InRangeTop_0_5, +CASE WHEN hzdepb_r <= 5 THEN hzdepb_r WHEN hzdepb_r > 5 and hzdept_r < 5 THEN 5 ELSE 0 END AS InRangeBot_0_5, +CASE WHEN hzdept_r < 30 then hzdept_r ELSE 0 END AS InRangeTop_0_30, +CASE WHEN hzdepb_r <= 30 THEN hzdepb_r WHEN hzdepb_r > 30 and hzdept_r < 30 THEN 30 ELSE 0 END AS InRangeBot_0_30, +---5 to 15 +CASE WHEN hzdepb_r < 5 THEN 0 +WHEN hzdept_r >15 THEN 0 +WHEN hzdepb_r >= 5 AND hzdept_r < 5 THEN 5 +WHEN hzdept_r < 5 THEN 0 +WHEN hzdept_r < 15 then hzdept_r ELSE 5 END AS InRangeTop_5_15 , +CASE WHEN hzdept_r > 15 THEN 0 +WHEN hzdepb_r < 5 THEN 0 +WHEN hzdepb_r <= 15 THEN hzdepb_r WHEN hzdepb_r > 15 and hzdept_r < 15 THEN 15 ELSE 5 END AS InRangeBot_5_15, +---15 to 30 +CASE WHEN hzdepb_r < 15 THEN 0 +WHEN hzdept_r >30 THEN 0 +WHEN hzdepb_r >= 15 AND hzdept_r < 15 THEN 15 +WHEN hzdept_r < 15 THEN 0 +WHEN hzdept_r < 30 then hzdept_r ELSE 15 END AS InRangeTop_15_30 , +CASE WHEN hzdept_r > 30 THEN 0 +WHEN hzdepb_r < 15 THEN 0 +WHEN hzdepb_r <= 30 THEN hzdepb_r WHEN hzdepb_r > 30 and hzdept_r < 30 THEN 30 ELSE 15 END AS InRangeBot_15_30, +--30 to 60 +CASE WHEN hzdepb_r < 30 THEN 0 +WHEN hzdept_r >60 THEN 0 +WHEN hzdepb_r >= 30 AND hzdept_r < 30 THEN 30 +WHEN hzdept_r < 30 THEN 0 +WHEN hzdept_r < 60 then hzdept_r ELSE 30 END AS InRangeTop_30_60 , +CASE WHEN hzdept_r > 60 THEN 0 +WHEN hzdepb_r < 30 THEN 0 +WHEN hzdepb_r <= 60 THEN hzdepb_r WHEN hzdepb_r > 60 and hzdept_r < 60 THEN 60 ELSE 30 END AS InRangeBot_30_60, +---60 to 100 +CASE WHEN hzdepb_r < 60 THEN 0 +WHEN hzdept_r >100 THEN 0 +WHEN hzdepb_r >= 60 AND hzdept_r < 60 THEN 60 +WHEN hzdept_r < 60 THEN 0 +WHEN hzdept_r < 100 then hzdept_r ELSE 60 END AS InRangeTop_60_100 , +CASE WHEN hzdept_r > 100 THEN 0 +WHEN hzdepb_r < 60 THEN 0 +WHEN hzdepb_r <= 100 THEN hzdepb_r WHEN hzdepb_r > 100 and hzdept_r < 100 THEN 100 ELSE 60 END AS InRangeBot_60_100, +--100 to 200 +CASE WHEN hzdepb_r < 100 THEN 0 +WHEN hzdept_r >200 THEN 0 +WHEN hzdepb_r >= 100 AND hzdept_r < 100 THEN 100 +WHEN hzdept_r < 100 THEN 0 +WHEN hzdept_r < 200 then hzdept_r ELSE 100 END AS InRangeTop_100_200 , +CASE WHEN hzdept_r > 200 THEN 0 +WHEN hzdepb_r < 100 THEN 0 +WHEN hzdepb_r <= 200 THEN hzdepb_r WHEN hzdepb_r > 200 and hzdept_r < 200 THEN 200 ELSE 100 END AS InRangeBot_100_200, +CASE WHEN hzdepb_r < 20 THEN 0 +WHEN hzdept_r >50 THEN 0 +WHEN hzdepb_r >= 20 AND hzdept_r < 20 THEN 20 +WHEN hzdept_r < 20 THEN 0 +WHEN hzdept_r < 50 then hzdept_r ELSE 20 END AS InRangeTop_20_50 , +CASE WHEN hzdept_r > 50 THEN 0 +WHEN hzdepb_r < 20 THEN 0 +WHEN hzdepb_r <= 50 THEN hzdepb_r WHEN hzdepb_r > 50 and hzdept_r < 50 THEN 50 ELSE 20 END AS InRangeBot_20_50, +CASE WHEN hzdepb_r < 50 THEN 0 +WHEN hzdept_r >100 THEN 0 +WHEN hzdepb_r >= 50 AND hzdept_r < 50 THEN 50 +WHEN hzdept_r < 50 THEN 0 +WHEN hzdept_r < 100 then hzdept_r ELSE 50 END AS InRangeTop_50_100 , +CASE WHEN hzdept_r > 100 THEN 0 +WHEN hzdepb_r < 50 THEN 0 +WHEN hzdepb_r <= 100 THEN hzdepb_r WHEN hzdepb_r > 100 and hzdept_r < 100 THEN 100 ELSE 50 END AS InRangeBot_50_100, +om_r, fragvol, dbthirdbar_r, cokey, mukey, 100.0 - fragvol AS frag_main +INTO #SOC +FROM #acpf +ORDER BY cokey, hzdept_r ASC, hzdepb_r ASC, chkey +; + +SELECT mukey, cokey, hzname, chkey, comppct_r, hzdept_r, hzdepb_r, thickness, +InRangeTop_0_150, +InRangeBot_0_150, +InRangeTop_0_30, +InRangeBot_0_30, +InRangeTop_20_50, +InRangeBot_20_50, +InRangeTop_50_100 , +InRangeBot_50_100, +(( ((InRangeBot_0_150 - InRangeTop_0_150) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_150, +(( ((InRangeBot_0_30 - InRangeTop_0_30) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_30, +---Removed * ( comppct_r * 100 ) +((((InRangeBot_20_50 - InRangeTop_20_50) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_20_50, +---Removed * ( comppct_r * 100 ) +((((InRangeBot_50_100 - InRangeTop_50_100) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_50_100, +(( ((InRangeBot_0_5 - InRangeTop_0_5) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_5, +(( ((InRangeBot_5_15 - InRangeTop_5_15) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_5_15, +(( ((InRangeBot_15_30 - InRangeTop_15_30) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_15_30, +(( ((InRangeBot_30_60 - InRangeTop_30_60) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_30_60, +(( ((InRangeBot_60_100 - InRangeTop_60_100) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_60_100, +(( ((InRangeBot_100_200 - InRangeTop_100_200) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_100_200 +---Removed * ( comppct_r * 100 ) +INTO #SOC2 +FROM #SOC +ORDER BY mukey ,cokey, comppct_r DESC, hzdept_r ASC, hzdepb_r ASC, chkey +; + +---Aggregates and sum it by component. +SELECT DISTINCT cokey, mukey, +ROUND (SUM (HZ_SOC_0_150) over(PARTITION BY cokey) ,4) AS CO_SOC_0_150, +ROUND (SUM (HZ_SOC_0_30) over(PARTITION BY cokey) ,4) AS CO_SOC_0_30, +ROUND (SUM (HZ_SOC_20_50) over(PARTITION BY cokey),4) AS CO_SOC_20_50, +ROUND (SUM (HZ_SOC_50_100) over(PARTITION BY cokey),4) AS CO_SOC_50_100, +ROUND (SUM (HZ_SOC_0_5) over(PARTITION BY cokey),4) AS CO_SOC_0_5, +ROUND (SUM (HZ_SOC_5_15) over(PARTITION BY cokey),4) AS CO_SOC_5_15, +ROUND (SUM (HZ_SOC_15_30) over(PARTITION BY cokey),4) AS CO_SOC_15_30, +ROUND (SUM (HZ_SOC_30_60) over(PARTITION BY cokey),4) AS CO_SOC_30_60, +ROUND (SUM (HZ_SOC_60_100) over(PARTITION BY cokey),4) AS CO_SOC_60_100, +ROUND (SUM (HZ_SOC_100_200) over(PARTITION BY cokey),4) AS CO_SOC_100_200 +INTO #SOC3 +FROM #SOC2 +GROUP BY mukey, cokey, HZ_SOC_0_150, HZ_SOC_0_30, HZ_SOC_20_50, HZ_SOC_50_100, HZ_SOC_0_5, HZ_SOC_5_15, HZ_SOC_15_30, HZ_SOC_30_60, HZ_SOC_60_100, HZ_SOC_100_200 +; + +SELECT DISTINCT #SOC3.cokey, #SOC3.mukey, adj_comp_pct AS WEIGHTED_COMP_PCT, +CO_SOC_0_30, CO_SOC_0_30 * adj_comp_pct AS WEIGHTED_CO_SOC_0_30, +CO_SOC_20_50, CO_SOC_20_50 * adj_comp_pct AS WEIGHTED_CO_SOC_20_50, +CO_SOC_50_100, CO_SOC_50_100 * adj_comp_pct AS WEIGHTED_CO_SOC_50_100, +CO_SOC_0_150, CO_SOC_0_150 * adj_comp_pct AS WEIGHTED_CO_SOC_0_150, +CO_SOC_0_5, CO_SOC_0_5 * adj_comp_pct AS WEIGHTED_CO_SOC_0_5, +CO_SOC_5_15, CO_SOC_5_15 * adj_comp_pct AS WEIGHTED_CO_SOC_5_15, +CO_SOC_15_30, CO_SOC_15_30 * adj_comp_pct AS WEIGHTED_CO_SOC_15_30, +CO_SOC_30_60, CO_SOC_30_60 * adj_comp_pct AS WEIGHTED_CO_SOC_30_60, +CO_SOC_60_100, CO_SOC_60_100 * adj_comp_pct AS WEIGHTED_CO_SOC_60_100, +CO_SOC_100_200 , CO_SOC_100_200 * adj_comp_pct AS WEIGHTED_CO_SOC_100_200 +INTO #SOC4 +FROM #SOC3 +INNER JOIN #muacpf ON #muacpf.cokey = #SOC3.cokey +GROUP BY #SOC3.cokey, #SOC3.mukey, adj_comp_pct , CO_SOC_0_30, CO_SOC_20_50,CO_SOC_50_100, CO_SOC_0_150, CO_SOC_0_5, CO_SOC_5_15, CO_SOC_15_30, CO_SOC_30_60,CO_SOC_60_100, CO_SOC_100_200 +; + +-- Unit Conversion +SELECT DISTINCT #M4.mukey, #M4.aoiid , +#M4.landunit, +landunit_acres, mapunit_acres, ROUND (SUM (WEIGHTED_CO_SOC_0_30) OVER(PARTITION BY #M4.aoiid, #SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_30 , +ROUND (SUM (WEIGHTED_CO_SOC_20_50) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_20_50 , +ROUND (SUM (WEIGHTED_CO_SOC_50_100) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_50_100, +ROUND (SUM (WEIGHTED_CO_SOC_0_150) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_150, +ROUND (SUM (WEIGHTED_CO_SOC_0_5) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_5 , +ROUND (SUM (WEIGHTED_CO_SOC_5_15) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_5_15 , +ROUND (SUM (WEIGHTED_CO_SOC_15_30) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_15_30 , +ROUND (SUM (WEIGHTED_CO_SOC_30_60) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_30_60 , +ROUND (SUM (WEIGHTED_CO_SOC_60_100) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_60_100 , +ROUND (SUM (WEIGHTED_CO_SOC_100_200) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_100_200 +INTO #SOC5 +FROM #SOC4 +LEFT OUTER JOIN #M4 ON #M4.mukey = #SOC4.mukey +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #M4.aoiid +GROUP BY #M4.mukey, #SOC4.mukey, #M4.aoiid , +#M4.landunit, +landunit_acres, mapunit_acres,WEIGHTED_CO_SOC_0_30, WEIGHTED_CO_SOC_20_50, WEIGHTED_CO_SOC_50_100, WEIGHTED_CO_SOC_0_5, WEIGHTED_CO_SOC_5_15, WEIGHTED_CO_SOC_15_30, WEIGHTED_CO_SOC_30_60, WEIGHTED_CO_SOC_60_100, WEIGHTED_CO_SOC_100_200, #SOC4.WEIGHTED_CO_SOC_0_150 +; + +CREATE TABLE #SOC6 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +SOCSTOCK_0_5_Weighted_Average DECIMAL (10, 2), +SOCSTOCK_0_30_Weighted_Average DECIMAL (10, 2), +SOCSTOCK_0_150_Weighted_Average DECIMAL (10, 2) +) +; + +INSERT INTO #SOC6 +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_5) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_5_Weighted_Average, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_30) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_30_Weighted_Average, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_150) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_150_Weighted_Average +FROM #SOC5 +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, SOCSTOCK_0_5, SOCSTOCK_0_30, SOCSTOCK_0_150 +; + +--Begin AWS +CREATE TABLE #acpfaws +(aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres DECIMAL (10, 2), +mu_pct_sum INT, +aws0150wta DECIMAL (10, 2) ) +; + +INSERT INTO #acpfaws +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +mu_pct_sum, +aws0150wta +FROM (#M4 AS MA44 +INNER JOIN muaggatt AS mt on MA44.mukey = mt.mukey ) +; + +CREATE TABLE #aws1 +( aoiid INT, +landunit CHAR(20), +landunit_acres DECIMAL (10, 2), +AWS_Weighted_Average0_150 DECIMAL (10, 2) ) +; + +INSERT INTO #aws1 +SELECT DISTINCT +#acpfaws.aoiid , +#acpfaws.landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * aws0150wta) OVER(PARTITION BY #acpfaws.aoiid) AS AWS_Weighted_Average0_150 +FROM #acpfaws +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #acpfaws.aoiid +GROUP BY #acpfaws.aoiid, #acpfaws.landunit, mapunit_acres, landunit_acres, aws0150wta +; + +--Begin Aggregate Stability +CREATE TABLE #agg1 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml DECIMAL (6, 2) , +omr DECIMAL (6, 2) , +omh DECIMAL (6, 2), +sar_l FLOAT, +sar_r FLOAT, +sar_h FLOAT, +cec7_l FLOAT, +cec7_r FLOAT, +cec7_h FLOAT, +ec_l FLOAT, +ec_r FLOAT, +ec_h FLOAT, +esp_l DECIMAL (10, 2), +esp_r DECIMAL (10, 2), +esp_h DECIMAL (10, 2), +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg1 +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +MA44.cokey, +MA44.compname, +MA44.comppct_r, +MA44.majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +CASE WHEN claytotal_l > 92 then 92 WHEN claytotal_l < 8 THEN 8 ELSE claytotal_l END AS claytotall, +CASE WHEN claytotal_r > 92 then 92 ELSE claytotal_r END AS claytotalr, +CASE WHEN claytotal_h > 92 then 92 ELSE claytotal_h END AS claytotalh, +CASE WHEN om_l <0.01 THEN 0.05 WHEN om_l > 17 then 17 ELSE om_l END AS oml, +CASE WHEN om_r <0.01 THEN 0.05 WHEN om_r > 17 then 17 ELSE om_r END AS omr , +CASE WHEN om_h <0.01 THEN 0.05 WHEN om_h > 17 then 17 ELSE om_h END AS omh , +sar_l, +sar_r, +sar_h, +cec7_l, +cec7_r, +cec7_h, +ec_l, +ec_r, +ec_h, +(100 * (-0.0126 + 0.01475 * sar_l)) / (1 + (-0.0126 + 0.01475 * sar_l)) AS esp_l, +(100 * (-0.0126 + 0.01475 * sar_r)) / (1 + (-0.0126 + 0.01475 * sar_r)) AS esp_r, +(100 * (-0.0126 + 0.01475 * sar_h)) / (1 + (-0.0126 + 0.01475 * sar_h)) AS esp_h, +(SELECT TOP 1 texcl FROM chtexturegrp AS chtg INNER JOIN chtexture AS cht ON chtg.chtgkey = cht.chtgkey AND chtg.rvindicator = 'yes' AND chtg.chkey=cha.chkey) AS tcl, +major_mu_pct_sum, mu_pct_sum +FROM (#M4 AS MA44 INNER JOIN (component AS coa INNER JOIN chorizon AS cha ON cha.cokey = coa.cokey AND cha.hzdept_r < 15 ) ON MA44.cokey = coa.cokey AND MA44.majcompflag = 'yes' ) +; + +CREATE TABLE #agg2 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml FLOAT, +omr FLOAT, +omh FLOAT, +sar_l FLOAT, +sar_r FLOAT, +sar_h FLOAT, +cec7_l FLOAT, +cec7_r FLOAT, +cec7_h FLOAT, +ec_l FLOAT, +ec_r FLOAT, +ec_h FLOAT, +esp_l FLOAT, +esp_r FLOAT, +esp_h FLOAT, +tcl CHAR(40), +sandy INT, +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg2 +SELECT DISTINCT +aoiid , +landunit, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +claytotall, +claytotalr, +claytotalh, +oml , +omr , +omh , +sar_l, +sar_r, +sar_h, +cec7_l, +cec7_r, +cec7_h, +ec_l, +ec_r, +ec_h, +CASE WHEN cec7_l < 50 + 0 AND cec7_l IS NOT NULL AND sar_l IS NOT NULL AND sar_l !=0 AND sar_l < 40 + 0 AND ec_l < 20 + 0 THEN esp_l +WHEN sar_l !=0 AND sar_l IS NOT NULL THEN 1.5 * sar_l / (1 + 0.015 * sar_l) +WHEN sar_l < 0.01 THEN 0 ELSE NULL END AS esp_l, +CASE WHEN cec7_r < 50 + 0 AND cec7_r IS NOT NULL AND sar_r IS NOT NULL AND sar_r !=0 AND sar_r < 40 + 0 AND ec_r < 20 + 0 THEN esp_r +WHEN sar_r !=0 and sar_r IS NOT NULL then 1.5 * sar_r / (1 + 0.015 * sar_r) +WHEN sar_r < 0.01 THEN 0 ELSE NULL END AS esp_r, +CASE WHEN cec7_h < 50 + 0 AND cec7_h IS NOT NULL AND sar_h IS NOT NULL AND sar_h !=0 AND sar_h < 40 + 0 AND ec_h < 20 + 0 THEN esp_h +WHEN sar_h !=0 AND sar_h IS NOT NULL THEN 1.5 * sar_h / (1 + 0.015 * sar_h) +WHEN sar_h < 0.01 THEN 0 ELSE NULL END AS esp_h, +tcl, +CASE WHEN tcl = 'Loamy coarse sand' THEN 1 +WHEN tcl = 'Loamy fine sand' THEN 1 +WHEN tcl = 'Loamy sand' THEN 1 +WHEN tcl = 'Sand' THEN 1 +WHEN tcl = 'Coarse sand' THEN 1 +WHEN tcl = 'Fine sand' THEN 1 ELSE 0 END AS sandy, +major_mu_pct_sum, +mu_pct_sum +FROM #agg1 +; + +CREATE TABLE #agg3 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml FLOAT, +omr FLOAT, +omh FLOAT, +sandy INT, +AgStab_l DECIMAL (10, 2), +AgStab_r DECIMAL (10, 2), +AgStab_h DECIMAL (10, 2), +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg3 +SELECT DISTINCT +aoiid, +landunit, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +claytotall, +claytotalr, +claytotalh, +oml, +omr, +omh, +sandy, +49.7 + 13.7 * LOG(oml) + 0.61 * claytotall - 0.0045 * POWER(claytotall, 2) - 0.28 * esp_h - 0.06 * POWER(esp_h, 2) AS AgStab_l, +49.7 + 13.7 * LOG(omr) + 0.61 * claytotalr - 0.0045 * POWER(claytotalr, 2) - 0.28 * esp_r - 0.06 * POWER(esp_r, 2) AS AgStab_r, +49.7 + 13.7 * LOG(omh) + 0.61 * claytotalh - 0.0045 * POWER(claytotalh, 2) - 0.28 * esp_l - 0.06 * POWER(esp_l, 2) AS AgStab_h, +tcl, +major_mu_pct_sum, +mu_pct_sum +FROM #agg2 +; + +CREATE TABLE #agg4 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +AgStab_l FLOAT, +AgStab_r FLOAT, +AgStab_h FLOAT, +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT, +thickness INT, +AGG_InRangeTop_0_15 INT, +AGG_InRangeBot_0_15 INT ) +; + +INSERT INTO #agg4 +SELECT DISTINCT ag.aoiid , +ag.landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +CASE WHEN AgStab_l > 100 THEN 100 WHEN claytotall >= 0 AND claytotall < 5 THEN NULL WHEN sandy=1 THEN null WHEN oml > 20 THEN NULL ELSE AgStab_l END AS AgStab_l, +CASE WHEN AgStab_r > 100 THEN 100 WHEN claytotalr >= 0 AND claytotalr < 5 THEN NULL WHEN sandy=1 THEN null WHEN omr > 20 THEN NULL ELSE AgStab_r END AS AgStab_r, +CASE WHEN AgStab_h > 100 THEN 100 WHEN claytotalh >= 0 AND claytotalh < 5 THEN NULL WHEN sandy=1 THEN null WHEN omh > 20 THEN NULL ELSE AgStab_h END AS AgStab_h, +tcl, major_mu_pct_sum, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct, CASE WHEN hzdepb_r IS NULL THEN 0 +WHEN hzdept_r IS NULL THEN 0 ELSE hzdepb_r-hzdept_r END AS thickness, +CASE WHEN hzdept_r < 15 THEN hzdept_r ELSE 0 END AS AGG_InRangeTop_0_15, +CASE WHEN hzdepb_r <= 15 THEN hzdepb_r WHEN hzdepb_r > 15 and hzdept_r < 15 THEN 15 ELSE 0 END AS AGG_InRangeBot_0_15 +FROM #AoiAcres +LEFT OUTER JOIN #agg3 AS ag ON ag.aoiid = #AoiAcres.aoiid WHERE majcompflag = 'Yes' GROUP BY ag.aoiid , +ag.landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l , AgStab_h, AgStab_r, +claytotall, claytotalr, claytotalh, +sandy, +comppct_r, +major_mu_pct_sum, +mu_pct_sum, +oml, omr, omh, +tcl +; + +CREATE TABLE #agg5 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +AgStab_l FLOAT, +AgStab_r FLOAT, +AgStab_h FLOAT, +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT, +thickness INT, +AGG_InRangeTop_0_15 INT, +AGG_InRangeBot_0_15 INT, +InRangeThickness INT, +InRangeSumThickness INT ) +; + +INSERT INTO #agg5 +SELECT DISTINCT aoiid, +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l, +AgStab_r, +AgStab_h, +tcl, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +thickness, +AGG_InRangeTop_0_15, +AGG_InRangeBot_0_15, +CASE WHEN AGG_InRangeTop_0_15 IS NULL THEN 0 +WHEN AGG_InRangeBot_0_15 IS NULL THEN 0 ELSE AGG_InRangeBot_0_15 - AGG_InRangeTop_0_15 END AS InRangeThickness, +SUM (CASE WHEN AGG_InRangeTop_0_15 IS NULL THEN 0 +WHEN AGG_InRangeBot_0_15 IS NULL THEN 0 ELSE AGG_InRangeBot_0_15 - AGG_InRangeTop_0_15 END) OVER(PARTITION BY cokey, aoiid) AS InRangeSumThickness +FROM #agg4 +GROUP BY aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l, +AgStab_r, +AgStab_h, +tcl, major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +thickness, +AGG_InRangeTop_0_15, +AGG_InRangeBot_0_15 +; + +CREATE TABLE #agg6 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +localphase CHAR(60), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT , +--AGG_InRangeTop_0_15 INT, +--AGG_InRangeBot_0_15 INT, +--InRangeThickness INT, +--InRangeSumThickness INT, +--AgStab_l FLOAT, +--AgStab_r FLOAT, +--AgStab_h FLOAT, +comp_weighted_average_l FLOAT, +comp_weighted_average_r FLOAT, +comp_weighted_average_h FLOAT ) +; + +INSERT INTO #agg6 +SELECT DISTINCT aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +localphase, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_l) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_l, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_r) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_r, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_h) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_h +FROM #agg5 AS ag5 +WHERE InRangeSumThickness !=0 +GROUP BY aoiid, landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +localphase, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +-- AgStab_l , +--AgStab_r , +--AgStab_h , +--AGG_InRangeTop_0_15, +--AGG_InRangeBot_0_15, +InRangeThickness, InRangeSumThickness, +AgStab_l, AgStab_r, AgStab_h +; + +---Map unit Aggregation for mapunit table +CREATE TABLE #agg7 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +major_mu_pct_sum INT, +mu_pct_sum INT, +MU_SUM_AGG_L DECIMAL (10, 2), +MU_SUM_AGG_R DECIMAL (10, 2), +MU_SUM_AGG_H DECIMAL (10, 2) ) +--MU_Weighted_Average_R FLOAT ) +; + +-- Map Unit Aggregation +INSERT INTO #agg7 +SELECT DISTINCT aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +major_mu_pct_sum, +mu_pct_sum, +SUM (adj_comp_pct * comp_weighted_average_l) OVER(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_L, +SUM (adj_comp_pct * comp_weighted_average_r) OVER(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_R, +SUM (adj_comp_pct * comp_weighted_average_h) over(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_H +--(mapunit_acres/landunit_acres)*MU_SUM_AGG_R AS MU_Weighted_Average_R +FROM #agg6 AS ag6 +GROUP BY aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +comp_weighted_average_l, +comp_weighted_average_r, +comp_weighted_average_h +; + +CREATE TABLE #agg7a +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mapunit_acres FLOAT, +MU_SUM_AGG_L FLOAT, +MU_SUM_AGG_R FLOAT, +MU_SUM_AGG_H FLOAT ) +; + +INSERT INTO #agg7a +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +mapunit_acres, +CASE WHEN MU_SUM_AGG_R = 0 THEN 0 ELSE MU_SUM_AGG_L END AS MU_SUM_AGG_L , +MU_SUM_AGG_R , +CASE WHEN MU_SUM_AGG_R = 0 THEN 0 ELSE MU_SUM_AGG_H END AS MU_SUM_AGG_H +FROM #agg7 +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, MU_SUM_AGG_L, MU_SUM_AGG_R, MU_SUM_AGG_H +; + +CREATE TABLE #agg8 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +LU_AGG_Weighted_Average_L DECIMAL (10, 2), +LU_AGG_Weighted_Average_R DECIMAL (10, 2), +LU_AGG_Weighted_Average_H DECIMAL (10, 2) ) +; + +INSERT INTO #agg8 +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_L) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_L, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_R) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_R, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_H) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_H +FROM #agg7a +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, MU_SUM_AGG_L, MU_SUM_AGG_R, MU_SUM_AGG_H +; + +-- Flooding frequency and Ponding frequency +CREATE TABLE #pf +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres DECIMAL (10, 2), +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +flodfreq CHAR(20), +pondfreq CHAR(20), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #pf +SELECT DISTINCT +aoiid, +landunit, +M44.mukey, +mapunit_acres , +M44.cokey AS cokey, +M44.compname AS cname, +M44.comppct_r AS copct , +M44.majcompflag AS majcompflag, +(SELECT TOP 1 flodfreqcl FROM comonth, MetadataDomainMaster AS MD, MetadataDomainDetail AS DD WHERE comonth.cokey = M44.cokey AND flodfreqcl = ChoiceLabel AND DomainName = 'flooding_frequency_class' AND +MD.DomainID = DD.DomainID order by choicesequence desc) as flodfreq, +(SELECT TOP 1 pondfreqcl FROM comonth, MetadataDomainMaster AS MD, MetadataDomainDetail AS DD WHERE comonth.cokey = M44.cokey AND pondfreqcl = ChoiceLabel AND DomainName = 'ponding_frequency_class' AND +MD.DomainID = DD.DomainID ORDER BY choicesequence DESC) AS pondfreq, +major_mu_pct_sum, mu_pct_sum +FROM #M4 AS M44 +INNER JOIN comonth AS CM ON M44.cokey = CM.cokey AND M44.majcompflag = 'yes' +AND CASE +WHEN (flodfreqcl IN ('occasional', 'common', 'frequent', 'very frequent')) THEN 1 +WHEN (pondfreqcl IN ('occasional', 'common', 'frequent')) THEN 1 +ELSE 2 END = 1 +GROUP BY aoiid, landunit, M44.mukey, mapunit_acres, major_mu_pct_sum, mu_pct_sum, M44.cokey,M44.compname , M44.majcompflag, M44.comppct_r, flodfreqcl, pondfreqcl +; + +CREATE TABLE #pf1 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +flodfreq CHAR(20), +pondfreq CHAR(20), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT ) +; + +INSERT INTO #pf1 +SELECT DISTINCT pf.aoiid, pf.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, flodfreq, pondfreq, major_mu_pct_sum, mu_pct_sum, (1.0 * copct / NULLIF(major_mu_pct_sum, 0)) AS adj_comp_pct +FROM #AoiAcres +LEFT OUTER JOIN #pf AS pf ON pf.aoiid = #AoiAcres.aoiid +GROUP BY pf.aoiid, pf.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, flodfreq, pondfreq, major_mu_pct_sum, mu_pct_sum +; + +CREATE TABLE #pf2 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +cname CHAR(60), +copct INT, +major_MU_pct_sum INT, +MU_pct_sum INT, +adj_comp_pct FLOAT, +co_acres FLOAT ) +; + +INSERT INTO #pf2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, major_MU_pct_sum, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 2) AS co_acres +FROM #pf1 +; + + +--Begin Water table +CREATE TABLE #wet +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +soimoistdept_l INT, +soimoistdept_r INT, +soimoiststat CHAR(7), +MIN_soimoistdept_l INT, +MIN_soimoistdept_r INT, +major_MU_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #wet +SELECT +aoiid, +landunit, +M44.mukey, +mapunit_acres, +M44.cokey AS cokey, +M44.compname AS cname, +M44.comppct_r AS copct , +M44.majcompflag AS majcompflag, +soimoistdept_l, +soimoistdept_r, +soimoiststat, +MIN (soimoistdept_l) OVER(PARTITION BY M44.cokey) AS MIN_soimoistdept_l, +MIN (soimoistdept_r) OVER(PARTITION BY M44.cokey) AS MIN_soimoistdept_r, +major_MU_pct_sum, mu_pct_sum +FROM (#M4 AS M44 INNER JOIN (comonth AS CM INNER JOIN cosoilmoist AS COSM ON COSM.comonthkey = CM.comonthkey AND soimoiststat = 'Wet' AND CASE WHEN soimoistdept_l < 46 THEN 1 WHEN soimoistdept_r < 46 THEN 1 ELSE 2 END = 1 +) ON M44.cokey = CM.cokey AND M44.majcompflag = 'yes' +INNER JOIN component ON M44.cokey = component.cokey +AND (CASE WHEN soimoistdept_l IS NULL THEN soimoistdept_r ELSE soimoistdept_l END) = (SELECT MIN (CASE WHEN soimoistdept_l IS NULL THEN soimoistdept_r ELSE soimoistdept_l END) +FROM comonth AS CM2 +INNER JOIN cosoilmoist AS COSM2 ON COSM2.comonthkey = CM2.comonthkey AND soimoiststat = 'Wet' AND CASE WHEN soimoistdept_l < 46 THEN 1 WHEN soimoistdept_r < 46 THEN 1 ELSE 2 END = 1 AND CM2.cokey=M44.cokey +)) +WHERE CASE +WHEN (taxorder = 'gelisols' AND taxtempcl IN ('hypergelic', 'pergelic', 'subgelic') AND CM.month IN ('jul', 'aug')) THEN 1 +WHEN (taxtempregime IN ('cryic', 'pergelic', 'isofrigid') AND CM.month IN ('jul', 'aug')) THEN 1 +WHEN (taxtempregime IN ('frigid') AND CM.month IN ('may', 'jun', 'jul', 'aug', 'sep')) THEN 1 +WHEN (taxtempregime IN ('mesic') AND CM.month IN ( 'apr','may', 'jun', 'jul', 'aug', 'sep', 'oct')) THEN 1 +WHEN (taxtempregime IN ('thermic', 'hyperthermic') and CM.month IN ('mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct'))THEN 1 +WHEN (taxtempregime IN ('isothermic', 'isohyperthermic', 'isomesic') AND CM.month IN ('feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov')) THEN 1 +WHEN (CM.month IN ('jun', 'jul')) THEN 1 +ELSE 2 END = 1 +; + +CREATE TABLE #wet1 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +MIN_soimoistdept_l INT, +MIN_soimoistdept_r INT, +major_MU_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT ) +; + +INSERT INTO #wet1 +SELECT DISTINCT #AoiAcres.aoiid, #AoiAcres.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, MIN_soimoistdept_l, MIN_soimoistdept_r, major_mu_pct_sum, mu_pct_sum, (1.0 * copct / major_mu_pct_sum) AS adj_comp_pct +FROM #AoiAcres +LEFT OUTER JOIN #wet AS wet ON wet.aoiid = #AoiAcres.aoiid +GROUP BY #AoiAcres.aoiid, #AoiAcres.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, MIN_soimoistdept_r, MIN_soimoistdept_l, major_mu_pct_sum, mu_pct_sum +; + +CREATE TABLE #wet2 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +cname CHAR(60), +copct INT, +major_MU_pct_sum INT, +MU_pct_sum INT, +adj_comp_pct FLOAT, +co_acres FLOAT ) +; + +INSERT INTO #wet2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, major_MU_pct_sum, +MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #wet1 +; + +-- Hydric Soil Interp begins here +--INSERT INTO #Hydric_A (mukey, cokey, hydric_pct) + -- SELECT DISTINCT M4.mukey, M4.cokey, M4.comppct_r AS hydric_pct + -- FROM #M4 M4 + -- LEFT OUTER JOIN component C ON M4.cokey = C.cokey + -- WHERE C.hydricrating = 'Yes' +--; + +-- Populate #Hydric_B with mapunit-level hydric percent ratings +--INSERT INTO #Hydric_B (mukey, hydric_pct) + -- SELECT mukey, SUM(hydric_pct) AS hydric_pct + -- FROM #Hydric_A H1 + -- GROUP BY mukey + -- ORDER BY mukey +--; + +-- Hydric Soil Interp +INSERT INTO #Hydric1 (mukey, comp_count, count_maj_comp, all_hydric, all_not_hydric, maj_hydric, maj_not_hydric, hydric_inclusions, hydric_null) + SELECT DISTINCT M4.mukey, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey) AS comp_count, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes') AS count_maj_comp, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating = 'Yes' ) AS all_hydric, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating != 'Yes') AS all_not_hydric, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes' AND hydricrating = 'Yes') AS maj_hydric, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes' AND hydricrating != 'Yes') AS maj_not_hydric, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag != 'Yes' AND hydricrating = 'Yes' ) AS hydric_inclusions, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating IS NULL ) AS hydric_null + FROM #M4 AS M4 +; + +-- Takes hydric count statistics and converts them to interpretation-type rating classes (hydric_rating) +INSERT INTO #Hydric2 (mukey, hydric_rating, low_pct, rv_pct, high_pct) + SELECT + mukey, + CASE WHEN comp_count = all_not_hydric + hydric_null THEN 'Nonhydric' + WHEN comp_count = all_hydric THEN 'Hydric' + WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 'Predominantly hydric' + WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 'Predominantly nonhydric' + WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 'Partially hydric' + ELSE 'Error' + END AS hydric_rating, + + CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' + WHEN comp_count = all_hydric THEN 1 --'Hydric' + WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.80 --'Predominantly hydric' + WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.01 --'Predominantly nonhydric' + WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.15 --'Partially hydric' + ELSE 0.00 --'Error' + END AS low_pct, + + CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' + WHEN comp_count = all_hydric THEN 1 --'Hydric' + WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.85 --'Predominantly hydric' + WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.05 --'Predominantly nonhydric' + WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.50 --'Partially hydric' + ELSE 0.00 --'Error' + END AS rv_pct, + + CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' + WHEN comp_count = all_hydric THEN 1 --'Hydric' + WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.99 --'Predominantly hydric' + WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.20 --'Predominantly nonhydric' + WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.79 --'Partially hydric' + ELSE 0.00 --'Error' + END AS high_pct + FROM #Hydric1 +; + +INSERT INTO #Hydric3 ( aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres) + SELECT DISTINCT aoiid, + landunit, + 'Hydric Soils' AS attributename, + ROUND (SUM (mapunit_acres ) OVER(PARTITION BY aoiid), 2) AS aoi_acres, + H3.mukey, + CASE WHEN hydric_rating = 'Nonhydric' THEN 0 ELSE 1 END AS hydric_flag, + mapunit_acres * low_pct AS low_acres, + mapunit_acres * rv_pct AS rv_acres , + mapunit_acres * high_pct AS high_acres + FROM #Hydric2 AS H3 + INNER JOIN #M2 AS MH2 ON MH2.mukey = H3.mukey + GROUP BY aoiid, landunit, H3.mukey, mapunit_acres, hydric_rating, low_pct, rv_pct, high_pct +; + +--Easements +INSERT INTO #easHydric3 ( aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres, lowpct, rvpct, highpct ) +SELECT aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres, +CASE WHEN low_acres = 0 THEN 0 WHEN low_acres IS NULL THEN NULL ELSE ROUND (low_acres/aoi_acres,2) END AS lowpct, +CASE WHEN rv_acres = 0 THEN 0 WHEN rv_acres IS NULL THEN NULL ELSE ROUND (rv_acres/aoi_acres,2) END AS rvpct, +CASE WHEN high_acres = 0 THEN 0 WHEN high_acres IS NULL THEN NULL ELSE ROUND (high_acres/aoi_acres,2) END AS highpct +FROM #Hydric3 + + +-- ************************************************************************************************ +-- END OF QUERIES FOR SOIL PROPERTIES... + + +-- Begin query for soil interpretation: Surface Salt Concentration +-- ************************************************************************************************ + +SELECT @attributeName = 'Surface Salt Concentration'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Surface Salt Concentration +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Soil Susceptibility to Compaction +-- ************************************************************************************************ + +SELECT @attributeName = 'Soil Susceptibility to Compaction'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Soil Susceptibility to Compaction +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Organic Matter Depletion +-- ************************************************************************************************ + +SELECT @attributeName = 'Organic Matter Depletion'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Organic Matter Depletion +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Agricultural Organic Soil Subsidence +-- ************************************************************************************************ + +SELECT @attributeName = 'Agricultural Organic Soil Subsidence'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Agricultural Organic Soil Subsidence +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Limitations for Aerobic Soil Organisms +-- ************************************************************************************************ + +SELECT @attributeName = 'Limitations for Aerobic Soil Organisms'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Limitations for Aerobic Soil Organisms +-- ************************************************************************************************ + +-- Begin saving the final CART soil interpretation ratings for each landunit. The record for the overall landunit rating will have an id = 1. +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres, soils_metadata) + SELECT LC.landunit, LC.attributename, LC.rating_class, LC.rating_key, LC.rating_value, rolling_pct, rolling_acres, landunit_acres, MD.soils_metadata + FROM #LandunitRatingsCART LC + INNER JOIN #RatingDomain RD ON LC.attributename = RD.attributename AND LC.rating_class = RD.rating_class + INNER JOIN #LandunitMetadata MD ON LC.landunit = MD.landunit + WHERE LC.id = 1 + ORDER BY landunit, rating_key +; + +-- Ponding and Flooding CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT #pf2.landunit, 'Ponding or Flooding' AS rating_name, +CASE WHEN SUM (co_acres) IS NULL THEN 2 +WHEN SUM (co_acres) > 0 THEN 1 +WHEN SUM (co_acres) = 0 THEN 0 +ELSE -1 +END AS rating_value, +CASE WHEN SUM (co_acres) IS NULL THEN 'Not rated' +WHEN SUM (co_acres) > 0 THEN 'Yes' +WHEN SUM (co_acres) = 0 THEN 'No' +ELSE 'Error' +END AS rating_class +FROM #pf2 +GROUP BY #pf2.landunit +ORDER BY #pf2.landunit +; + +-- Water Table CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Water Table' AS attribute_name, +CASE WHEN SUM (co_acres) IS NULL THEN 2 +WHEN SUM (co_acres) > 0 THEN 1 +WHEN SUM (co_acres) = 0 THEN 0 +ELSE -1 +END AS rating_value, +CASE WHEN SUM (co_acres) IS NULL THEN 'Not rated' +WHEN SUM (co_acres) > 0 THEN 'Yes' +WHEN SUM (co_acres) = 0 THEN 'No' +ELSE 'Error' +END AS rating_class +FROM #wet2 +GROUP BY landunit +ORDER BY landunit +; + +-- Hydric Soils CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, attributename, +CASE WHEN SUM(rv_acres) IS NULL THEN 2 +WHEN SUM(rv_acres) > 0 THEN 1 +WHEN SUM(rv_acres) = 0 THEN 0 +END AS rating_key, +CASE WHEN SUM(rv_acres) IS NULL THEN 'Not rated' +WHEN SUM(rv_acres) > 0 THEN 'Yes' +WHEN SUM(rv_acres) = 0 THEN 'No' +END AS rating_class +FROM #Hydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; + + +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Organic and Hydric Soils' AS attributename, +CASE WHEN SUM(rv_acres) IS NULL THEN 2 +WHEN SUM(rv_acres) > 0 THEN 1 +WHEN SUM(rv_acres) = 0 THEN 0 +END AS rating_key, +CASE WHEN SUM(rv_acres) IS NULL THEN 'Not rated' +WHEN SUM(rv_acres) > 0 THEN 'Yes' +WHEN SUM(rv_acres) = 0 THEN 'No' +END AS rating_class +FROM #Hydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; +--Easments Hydric 50 Percent + +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Easements Hydric Soils' attributename, +CASE WHEN SUM(rvpct) IS NULL THEN 2 +WHEN SUM(rvpct) >= .50 THEN 1 +WHEN SUM(rvpct) < .50 THEN 0 +END AS rating_key, +CASE WHEN SUM(rvpct) IS NULL THEN 'Not rated' +WHEN SUM(rvpct) >= .50 THEN 'Yes' +WHEN SUM(rvpct) < .50 THEN 'No' +END AS rating_class +FROM #easHydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; + + + +-- SOC CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Soil Organic Carbon Stock' AS attributename, +CASE WHEN SOCSTOCK_0_30_Weighted_Average = 0 THEN 1 +WHEN SOCSTOCK_0_30_Weighted_Average > 0 AND SOCSTOCK_0_30_Weighted_Average < 10 THEN 2 +WHEN SOCSTOCK_0_30_Weighted_Average >= 10 AND SOCSTOCK_0_30_Weighted_Average < 25 THEN 3 +WHEN SOCSTOCK_0_30_Weighted_Average >= 25 AND SOCSTOCK_0_30_Weighted_Average < 50 THEN 4 +WHEN SOCSTOCK_0_30_Weighted_Average >= 50 AND SOCSTOCK_0_30_Weighted_Average < 100 THEN 5 +WHEN SOCSTOCK_0_30_Weighted_Average >= 100 THEN 6 +WHEN SOCSTOCK_0_30_Weighted_Average IS NULL THEN 7 +END AS rating_value, +CASE WHEN SOCSTOCK_0_30_Weighted_Average = 0 THEN 'None' +WHEN SOCSTOCK_0_30_Weighted_Average >0 AND SOCSTOCK_0_30_Weighted_Average < 10 THEN 'Very low' +WHEN SOCSTOCK_0_30_Weighted_Average >=10 AND SOCSTOCK_0_30_Weighted_Average < 25 THEN 'Low' +WHEN SOCSTOCK_0_30_Weighted_Average >=25 AND SOCSTOCK_0_30_Weighted_Average < 50 THEN 'Moderate' +WHEN SOCSTOCK_0_30_Weighted_Average >=50 AND SOCSTOCK_0_30_Weighted_Average < 100 THEN 'Moderately High' +WHEN SOCSTOCK_0_30_Weighted_Average >=100 THEN 'High' +WHEN SOCSTOCK_0_30_Weighted_Average IS NULL THEN 'Not rated' +END AS rating_class +FROM #SOC6 +; + +-- Aggregate Stability CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #agg8.landunit, 'Aggregate Stability' AS attributename, +CASE WHEN LU_AGG_Weighted_Average_R <25 THEN 1 +WHEN LU_AGG_Weighted_Average_R >=25 AND LU_AGG_Weighted_Average_R <50 THEN 2 +WHEN LU_AGG_Weighted_Average_R >=50 AND LU_AGG_Weighted_Average_R <75 THEN 3 +WHEN LU_AGG_Weighted_Average_R >=75 THEN 4 +WHEN LU_AGG_Weighted_Average_R IS NULL THEN 5 +END AS rating_value, +CASE WHEN LU_AGG_Weighted_Average_R <25 THEN 'Low' +WHEN LU_AGG_Weighted_Average_R >=25 AND LU_AGG_Weighted_Average_R <50 THEN 'Moderate' +WHEN LU_AGG_Weighted_Average_R >=50 AND LU_AGG_Weighted_Average_R <75 THEN 'Moderately High' +WHEN LU_AGG_Weighted_Average_R >=75 THEN 'High' +WHEN LU_AGG_Weighted_Average_R IS NULL THEN 'Not Rated' +END AS rating_class +FROM #agg8 +; + +-- AWS CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Available Water Storage' AS attributename, +CASE WHEN AWS_Weighted_Average0_150 IS NULL THEN 2 +WHEN AWS_Weighted_Average0_150 > 0 THEN 1 +WHEN AWS_Weighted_Average0_150 = 0 THEN 0 +END AS rating_value, +CASE WHEN AWS_Weighted_Average0_150 IS NULL THEN 'Not rated' +WHEN AWS_Weighted_Average0_150 > 0 THEN 'Yes' +WHEN AWS_Weighted_Average0_150 = 0 THEN 'No' +END AS rating_class +FROM #aws1 +; + +----------------------------------------------------------------=========================================================== begin +----------- Air Quality +DROP TABLE IF EXISTS #LandunitRatingsAirQualityData +CREATE TABLE #LandunitRatingsAirQualityData ( + landunit CHAR(20), + rating_name_CS CHAR(60), + rating_value_CS INT, + rating_class_CS CHAR(60), + rating_name_OMD CHAR(60), + rating_value_OMD INT, + rating_class_OMD CHAR(60), + rating_name_HYD CHAR(60), + rating_value_HYD INT, + rating_class_HYD CHAR(60), + ) + + +INSERT INTO #LandunitRatingsAirQualityData +( + landunit, + rating_name_CS, + rating_value_CS, + rating_class_CS, + rating_name_OMD, + rating_value_OMD, + rating_class_OMD, + rating_name_HYD, + rating_value_HYD, + rating_class_HYD +) +SELECT LRC.landunit, LRC.attributename AS rating_name, LRC.rating_value, LRC.rating_class, + LRC2.attributename AS rating_name2, LRC2.rating_value AS rating_value2, LRC2.rating_class AS rating_class2, + LRC3.attributename AS rating_name3, LRC3.rating_value AS rating_value3, LRC3.rating_class AS rating_class3 +FROM #LandunitRatingsCART2 LRC +INNER JOIN #AoiAcres AS a ON a.landunit = LRC.landunit AND LRC.attributename = 'Soil Organic Carbon Stock' +INNER JOIN #LandunitRatingsCART2 LRC2 ON LRC.landunit = LRC2.landunit AND LRC2.attributename ='Organic Matter Depletion' +INNER JOIN #LandunitRatingsCART2 LRC3 ON LRC.landunit = LRC3.landunit AND LRC3.attributename ='Easements Hydric Soils' + + +--------------------------------------------------------- begin long sql +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value) +SELECT landunit, 'Air Quality' AS rating_name, +----------------- +----------------- class 1 +CASE WHEN (rating_value_CS = 2 AND rating_value_OMD = 5 AND rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 1 +----------------- +WHEN (rating_value_CS = 3 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 1 +----------------- +WHEN (rating_value_CS = 4 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +----------------- +WHEN (rating_value_CS = 5 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +----------------- +----------------- class 2 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +---------------- +WHEN (rating_value_CS = 3 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +---------------- +WHEN (rating_value_CS = 4 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +---------------- +WHEN (rating_value_CS = 5 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +---------------- +WHEN (rating_value_CS = 6 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +----------------- class 3 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 3 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 3 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 3 +-------------- +-------------- make class = 3 when hydric +WHEN (rating_value_HYD = 1) +THEN 3 +-------------- +-------------- else make nNOT rated +ELSE 4 +END AS rating_value + FROM #LandunitRatingsAirQualityData + +------- for air quality - update the rating_class +------- SDM NOTE: SDA does not allow the update/set command - had to comment this out in the real SDA Query ; CART only uses the rating_name and rating_value + UPDATE #LandunitRatingsCART2 SET rating_class = 'Class ' + CAST(rating_value AS VARCHAR(3)) + WHERE attributename = 'air quality' + +-- For ArcMap LandUnit Rating table, also return rating_class. +SELECT LRC.landunit, LRC.attributename AS rating_name, LRC.rating_value, LRC.rating_class +FROM #LandunitRatingsCART2 LRC +INNER JOIN #AoiAcres AS a ON a.landunit = LRC.landunit +ORDER BY LRC.landunit, LRC.attributename +; + + + +DROP TABLE IF EXISTS #AoiTable +DROP TABLE IF EXISTS #AoiAcres +DROP TABLE IF EXISTS #AoiSoils +DROP TABLE IF EXISTS #AoiSoils2 +DROP TABLE IF EXISTS #M2 +DROP TABLE IF EXISTS #M5 +DROP TABLE IF EXISTS #M4 +DROP TABLE IF EXISTS #M6 +DROP TABLE IF EXISTS #M8 +DROP TABLE IF EXISTS #M10 +DROP TABLE IF EXISTS #InterpTable +DROP TABLE IF EXISTS #LandunitRatingsDetailed +DROP TABLE IF EXISTS #LandunitRatingsCART +DROP TABLE IF EXISTS #SDV +DROP TABLE IF EXISTS #RatingClasses +DROP TABLE IF EXISTS #RatingDomain +DROP TABLE IF EXISTS #DateStamps +DROP TABLE IF EXISTS #LandunitMetadata +DROP TABLE IF EXISTS #LandunitRatingsDetailed1 +DROP TABLE IF EXISTS #LandunitRatingsDetailed2 +DROP TABLE IF EXISTS #LandunitRatingsCART2 +DROP TABLE IF EXISTS #interp_dcd +DROP TABLE IF EXISTS #Hydric2 +DROP TABLE IF EXISTS #Hydric3 +DROP TABLE IF EXISTS #Hydric_A +DROP TABLE IF EXISTS #Hydric_B +DROP TABLE IF EXISTS #Hydric1 +DROP TABLE IF EXISTS #Hydric3 +DROP TABLE IF EXISTS #FC +DROP TABLE IF EXISTS #FC2 + +DROP TABLE IF EXISTS #wet +DROP TABLE IF EXISTS #wet1 +DROP TABLE IF EXISTS #wet2 +DROP TABLE IF EXISTS #pf +DROP TABLE IF EXISTS #pf1 +DROP TABLE IF EXISTS #pf2 +DROP TABLE IF EXISTS #agg1 +DROP TABLE IF EXISTS #agg2 +DROP TABLE IF EXISTS #agg3 +DROP TABLE IF EXISTS #agg4 +DROP TABLE IF EXISTS #agg5 +DROP TABLE IF EXISTS #agg6 +DROP TABLE IF EXISTS #agg7 +DROP TABLE IF EXISTS #agg7a +DROP TABLE IF EXISTS #agg8 +DROP TABLE IF EXISTS #acpf +DROP TABLE IF EXISTS #muacpf +DROP TABLE IF EXISTS #SOC5 +DROP TABLE IF EXISTS #hortopdepth +DROP TABLE IF EXISTS #acpf2 +DROP TABLE IF EXISTS #acpfhzn +DROP TABLE IF EXISTS #SOC +DROP TABLE IF EXISTS #SOC2 +DROP TABLE IF EXISTS #SOC3 +DROP TABLE IF EXISTS #SOC4 +DROP TABLE IF EXISTS #SOC5 +DROP TABLE IF EXISTS #SOC6 +DROP TABLE IF EXISTS #acpfaws +DROP TABLE IF EXISTS #hortopdepthaws +DROP TABLE IF EXISTS #acpf2aws +DROP TABLE IF EXISTS #acpfhznaws +DROP TABLE IF EXISTS #aws +DROP TABLE IF EXISTS #aws150 +DROP TABLE IF EXISTS #acpf3aws +DROP TABLE IF EXISTS #acpf4aws +DROP TABLE IF EXISTS #depthtestaws +DROP TABLE IF EXISTS #acpfwtavgaws +DROP TABLE IF EXISTS #alldata +DROP TABLE IF EXISTS #alldata2 +DROP TABLE IF EXISTS #aws1 +DROP TABLE IF EXISTS #drain +DROP TABLE IF EXISTS #drain2 +DROP TABLE IF EXISTS #drain3 +DROP TABLE IF EXISTS #organic +DROP TABLE IF EXISTS #o1 + diff --git a/SQL-Library/CART_SoilsQuery_20240415.sql b/SQL-Library/CART_SoilsQuery_20240415.sql new file mode 100644 index 0000000..37c81a1 --- /dev/null +++ b/SQL-Library/CART_SoilsQuery_20240415.sql @@ -0,0 +1,2910 @@ +use sdm +drop table IF EXISTS #AoiAcres +DROP TABLE IF EXISTS #Aoitable +DROP TABLE IF EXISTS #LandunitRatingsDetailed1 +DROP TABLE IF EXISTS #LandunitRatingsDetailed2 +DROP TABLE IF EXISTS #LandunitRatingsCART +DROP TABLE IF EXISTS #LandunitRatingsCART2 +DROP TABLE IF EXISTS #AoiSoils +DROP TABLE IF EXISTS #AoiSoils2 +DROP TABLE IF EXISTS #M2 +DROP TABLE IF EXISTS #FC +DROP TABLE IF EXISTS #FC2 +DROP TABLE IF EXISTS #M4 +DROP TABLE IF EXISTS #M5 +DROP TABLE IF EXISTS #M6 +DROP TABLE IF EXISTS #M8 +DROP TABLE IF EXISTS #M10 +DROP TABLE IF EXISTS #Hydric1 +DROP TABLE IF EXISTS #Hydric2 +DROP TABLE IF EXISTS #Hydric3 +DROP TABLE IF EXISTS #easHydric3 +DROP TABLE IF EXISTS #SDV +DROP TABLE IF EXISTS #RatingClasses +DROP TABLE IF EXISTS #RatingDomain +DROP TABLE IF EXISTS #DateStamps +DROP TABLE IF EXISTS #LandunitMetadata +DROP TABLE IF EXISTS #drain +DROP TABLE IF EXISTS #drain2 +DROP TABLE IF EXISTS #drain3 +DROP TABLE IF EXISTS #drain4 +DROP TABLE IF EXISTS #acpf +DROP TABLE IF EXISTS #muacpf +DROP TABLE IF EXISTS #hortopdepth +DROP TABLE IF EXISTS #acpf2 +DROP TABLE IF EXISTS #acpfhzn +DROP TABLE IF EXISTS #SOC +DROP TABLE IF EXISTS #SOC2 +DROP TABLE IF EXISTS #SOC3 +DROP TABLE IF EXISTS #SOC4 +DROP TABLE IF EXISTS #SOC5 +DROP TABLE IF EXISTS #SOC6 +DROP TABLE IF EXISTS #acpfaws +DROP TABLE IF EXISTS #aws1 +DROP TABLE IF EXISTS #agg1 +DROP TABLE IF EXISTS #agg2 +DROP TABLE IF EXISTS #agg3 +DROP TABLE IF EXISTS #agg4 +DROP TABLE IF EXISTS #agg5 +DROP TABLE IF EXISTS #agg6 +DROP TABLE IF EXISTS #agg7 +DROP TABLE IF EXISTS #agg7s +DROP TABLE IF EXISTS #agg7a +DROP TABLE IF EXISTS #agg8 +DROP TABLE IF EXISTS #pf +DROP TABLE IF EXISTS #pf1 +DROP TABLE IF EXISTS #pf2 +DROP TABLE IF EXISTS #wet +DROP TABLE IF EXISTS #wet1 +DROP TABLE IF EXISTS #wet2 +DROP TABLE IF EXISTS #LandunitRatingsAirQualityData + + + +/** SDA Query application=\"CART\" rule=\"Generalized Resource Assessment - September 2021\" version=\"FY22\" **/ +-- Updated Soil Organic Carbon Stock Domain and added Hydric Easements to Air Quality 09/27/2021 +-- Includes Air Quality 09/23/2021 +-- Includes Limitations for Aerobic Soil Organisms 8/2021 +-- BEGIN CREATING AOI QUERY +-- + + + +-- Declare all variables here + +-- ~DeclareChar(@attributeName,60)~ +-- begin macro substitution +declare @attributeName char(60); +-- end macro substitution + + +-- ~DeclareChar(@ruleDesign,60)~ +-- begin macro substitution +declare @ruleDesign char(60); +-- end macro substitution + + +-- ~DeclareChar(@ruleKey,30)~ +-- begin macro substitution +declare @ruleKey char(30); +-- end macro substitution + + +-- ~DeclareChar(@rating1,60)~ +-- begin macro substitution +declare @rating1 char(60); +-- end macro substitution + + +-- ~DeclareChar(@rating2,60)~ +-- begin macro substitution +declare @rating2 char(60); +-- end macro substitution + + +-- ~DeclareChar(@rating3,60)~ +-- begin macro substitution +declare @rating3 char(60); +-- end macro substitution + + +-- ~DeclareChar(@rating4,60)~ +-- begin macro substitution +declare @rating4 char(60); +-- end macro substitution + + +-- ~DeclareChar(@rating5,60)~ +-- begin macro substitution +declare @rating5 char(60); +-- end macro substitution + + +-- ~DeclareChar(@rating6,60)~ +-- begin macro substitution +declare @rating6 char(60); +-- end macro substitution + + +-- ~DeclareVarchar(@dateStamp,20)~ +-- begin macro substitution +declare @dateStamp varchar(20); +-- end macro substitution + + +-- ~DeclareInt(@minAcres)~ +-- begin macro substitution +declare @minAcres int; +-- end macro substitution + + +-- ~DeclareInt(@minPct)~ +-- begin macro substitution +declare @minPct int; +-- end macro substitution + + +-- ~DeclareGeometry(@aoiGeom)~ +-- begin macro substitution +declare @aoiGeom geometry; +-- end macro substitution + + +-- ~DeclareGeometry(@aoiGeomFixed)~ +-- begin macro substitution +declare @aoiGeomFixed geometry; +-- end macro substitution + + +-- ~DeclareChar(@ratingKey,70)~ +-- begin macro substitution +declare @ratingKey char(70); +-- end macro substitution + + +-- ~DeclareChar(@notRatedPhrase,15)~ +-- begin macro substitution +declare @notRatedPhrase char(15); +-- end macro substitution + + +-- ~DeclareInt(@Level)~ +-- begin macro substitution +declare @Level int; +-- end macro substitution + + +-- Create AOI table with polygon geometry. Coordinate system must be WGS1984 (EPSG 4326) +CREATE TABLE #AoiTable +( aoiid INT IDENTITY (1,1), +landunit CHAR(20), +aoigeom GEOMETRY ) +; + +-- Insert identifier string and WKT geometry for each AOI polygon after this... +--SELECT @aoiGeom = GEOMETRY::STGeomFromText('POLYGON ((-96.74222872144483 40.74271840692828, -96.74210090664928 40.74272043142865, -96.74229980268889 40.74406661139497, -96.74241264576158 40.744065442252015, -96.74222872144483 40.74271840692828))', 4326); + + + +--SELECT @aoiGeom = GEOMETRY::STGeomFromText('POLYGON ((-95.76620929570385 43.46601777636999, -95.76615593984417 43.46604562813982, -95.76610246190545 43.46614136762256, -95.76600976681168 43.46625263223644, -95.7658350722119 43.466397534682315, -95.76538288653003 43.46689089040536, -95.76496159921285 43.467373892107524, -95.76450228313925 43.46790518952219, -95.76415943013215 43.46808890004159, -95.7615847084341 43.4681330731871, -95.76158394756106 43.468278898570425, -95.76427381254219 43.468239286946144, -95.76444371540343 43.46821816351749, -95.76462948700419 43.46806209896498, -95.76522030627162 43.46737045663286, -95.76618645424115 43.46624410546294, -95.76636032945261 43.46605563105713, -95.76620929570385 43.46601777636999))', 4326); +SELECT @aoiGeom = GEOMETRY::STGeomFromText('POLYGON ((-90.98588532092 42.511499779439141, -90.985929713864721 42.514462705376076, -90.9859381472486 42.515025130736554, -90.990671855570881 42.515052658222906, -90.990670411079918 42.514730817030831, -90.990673276705664 42.514159026115244, -90.990694456285127 42.513015715971306, -90.990694431132283 42.51150087668082, -90.98588532092 42.511499779439141))', 4326); +SELECT @aoiGeomFixed = @aoiGeom.MakeValid().STUnion(@aoiGeom.STStartPoint()); +INSERT INTO #AoiTable ( landunit, aoigeom ) +VALUES ('CART LU', @aoiGeomFixed); + + + +-- End of AOI geometry section + +-- #AoiAcres table to contain summary acres for each landunit +CREATE TABLE #AoiAcres +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT ) +; + +-- #LandunitRatingsDetailed1 table +CREATE TABLE #LandunitRatingsDetailed1 +( aoiid INT, +landunit CHAR(20), +attributename CHAR(60), +rating_class CHAR(60), +rating_value INT, +rating_key CHAR(60), +rating_pct FLOAT, +rating_acres FLOAT, +landunit_acres FLOAT ) +; + +-- #LandunitRatingsDetailed2 table +CREATE TABLE #LandunitRatingsDetailed2 +(landunit CHAR(20), +attributename CHAR(60), +rating_class CHAR(60), +rating_value INT, +rating_key CHAR(60), +rating_pct FLOAT, +rating_acres FLOAT, +landunit_acres FLOAT, +rolling_pct FLOAT, +rolling_acres FLOAT ) +; + +-- #LandunitRatingsCART table +CREATE TABLE #LandunitRatingsCART +(id INT, +landunit CHAR(20), +attributename CHAR(60), +rating_class CHAR(60), +rating_value INT, +rating_key CHAR(60), +rolling_pct FLOAT, +rolling_acres FLOAT, +landunit_acres FLOAT ) +; + +-- #LandunitRatingsCART2 table +-- This table will only contain the final, overall ratings for CART +CREATE TABLE #LandunitRatingsCART2 +(id INT IDENTITY (1,1), +landunit CHAR(20), +attributename CHAR(60), +rating_class CHAR(60), +rating_key CHAR(60), +rating_value INT, -- Need to change to rating_value +rolling_pct FLOAT, +rolling_acres FLOAT, +landunit_acres FLOAT, +soils_metadata VARCHAR(150) ) +; + +-- #AoiSoils table contains intersected soil polygon table with geometry +CREATE TABLE #AoiSoils +( polyid INT IDENTITY (1,1), +aoiid INT, +landunit CHAR(20), +mukey INT, +soilgeom GEOMETRY ) +; + +-- #AoiSoils2 table contains Soil geometry with landunits +CREATE TABLE #AoiSoils2 +( aoiid INT, +polyid INT, +landunit CHAR(20), +mukey INT, +poly_acres FLOAT, +soilgeog GEOGRAPHY ) +; + +-- #M2 table contains Soil map unit acres, aggregated by mukey (merges polygons together) +CREATE TABLE #M2 +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT ) +; + +-- #FC table contains Soil map unit acres, aggregated by mukey Farm Class +CREATE TABLE #FC +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +farmlndclass CHAR(30), +farmlndclassvalue INT, +landunit_acres FLOAT ) +; + + +CREATE TABLE #FC2 +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +farmlndclass CHAR(30), +farmlndclassvalue INT, +landunit_acres FLOAT, +farmac_pct REAL, +farm_ac_sum REAL, +farmac_sum_pct INT +) +; + + +-- #M4 table contains Component level data with cokey, comppct_r and mapunit sum-of-comppct_r (major components only) +CREATE TABLE #M4 +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +mu_pct_sum INT, +major_mu_pct_sum INT, +drainagecl CHAR(254) +); + +-- #M5 table contains Component level ratings for the currently selected soil interpretation +CREATE TABLE #M5 +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +rating_class CHAR(60), +mu_pct_sum INT ) +; + +-- #M6 table contains Component level ratings with adjusted component percent to account for missing minor components +CREATE TABLE #M6 +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +rating_class CHAR(60), +mu_pct_sum INT, +adj_comp_pct FLOAT ) +; + +-- #M8 table contains Component acres by multiplying map unit acres with adjusted component percent +CREATE TABLE #M8 +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +rating_class CHAR(60), +MU_pct_sum INT, +adj_comp_pct FLOAT, +co_acres FLOAT ) +; + +-- #M10 table contains Aggregated rating class values and sum of component acres by landunit (Tract and Field number) +CREATE TABLE #M10 +( landunit CHAR(20), +rating_class CHAR(60), +rating_acres FLOAT ) +; + +-- Hydric table contains soils at the Map Unit, using all map units from table #M2. +CREATE TABLE #Hydric1 +(mukey INT, +comp_count INT, -- cnt_comp +count_maj_comp INT, -- cnt_mjr +all_hydric INT, -- cnt_hydric +all_not_hydric INT, -- cnt_nonhydric +maj_hydric INT, -- cnt_mjr_hydric +maj_not_hydric INT, -- cnt_mjr_nonhydric +hydric_inclusions INT, -- cnt_minor_hydric +hydric_null INT ) -- cnt_null_hydric +; + +-- #Hydric2 table contains the Low, Rv, and High range for Hydric +CREATE TABLE #Hydric2 +(mukey INT, +hydric_rating CHAR (25), +low_pct FLOAT, +rv_pct FLOAT, +high_pct FLOAT ) +; + +-- #Hydric3 table contains hydric rating acres +CREATE TABLE #Hydric3 +(aoiid INT, +landunit CHAR(20), +attributename CHAR(60), +AOI_Acres FLOAT, +rating_class CHAR(60), +rating_key CHAR(60), +mukey INT, +hydric_flag INT, +low_acres FLOAT, +rv_acres FLOAT, +high_acres FLOAT ) +; + +-- #Easments Hydric3 table contains hydric rating acres +CREATE TABLE #easHydric3 +(aoiid INT, +landunit CHAR(20), +attributename CHAR(60), +AOI_Acres FLOAT, +rating_class CHAR(60), +rating_key CHAR(60), +mukey INT, +hydric_flag INT, +low_acres FLOAT, +rv_acres FLOAT, +high_acres FLOAT, +lowpct REAL , rvpct REAL, highpct REAL ) +; + + +-- Identify all hydric components by map unit, using table #M4. +--CREATE TABLE #Hydric_A +-- (mukey INT, +-- cokey INT, +-- hydric_pct INT ) +--; + +-- Hydric soils at the mapunit level, using all components where hydricrating = 'Yes'. +--CREATE TABLE #Hydric_B +-- (mukey INT, +-- hydric_pct INT ) +--; + +-- #SDV table contains rule settings from sdvattribute table +CREATE TABLE #SDV +(attributekey BIGINT, +attributename CHAR(60), +attributetablename CHAR(30), +attributecolumnname CHAR(30), +attributelogicaldatatype CHAR(20), +attributefieldsize SMALLINT, +attributeprecision TINYINT, +attributedescription NVARCHAR(MAX), +attributeuom NVARCHAR(60), +attributeuomabbrev NVARCHAR(30), +attributetype CHAR(20), +nasisrulename CHAR(60), +ruledesign NVARCHAR(60), +notratedphrase CHAR(15), +mapunitlevelattribflag TINYINT, +complevelattribflag TINYINT, +cmonthlevelattribflag TINYINT, +horzlevelattribflag TINYINT, +tiebreakdomainname CHAR(40), +tiebreakruleoptionflag TINYINT, +tiebreaklowlabel CHAR(20), +tiebreakhighlabel CHAR(20), +tiebreakrule SMALLINT, +resultcolumnname CHAR(10), +sqlwhereclause CHAR(255), +primaryconcolname CHAR(30), +pcclogicaldatatype CHAR(20), +primaryconstraintlabel CHAR(30), +secondaryconcolname CHAR(30), +scclogicaldatatype CHAR(20), +secondaryconstraintlabel CHAR(30), +dqmodeoptionflag TINYINT, +depthqualifiermode CHAR(20), +layerdepthtotop FLOAT, +layerdepthtobottom FLOAT, +layerdepthuom CHAR(20), +monthrangeoptionflag TINYINT, +beginningmonth CHAR(9), +endingmonth CHAR(9), +horzaggmeth CHAR(30), +interpnullsaszerooptionflag TINYINT, +interpnullsaszeroflag TINYINT, +nullratingreplacementvalue CHAR(254), +basicmodeflag TINYINT, +maplegendkey SMALLINT, +maplegendclasses TINYINT, +maplegendxml XML, +nasissiteid BIGINT, +wlupdated DATETIME, +algorithmname CHAR(50), +componentpercentcutoff TINYINT, +readytodistribute TINYINT, +effectivelogicaldatatype CHAR(20), +rulekey CHAR(30) ) +; + +-- #RatingClasses table contains the first six rating classes for each interp +CREATE TABLE #RatingClasses +(attributename CHAR(60), +ruledesign CHAR(60), +rating1 CHAR(60), +rating2 CHAR(60), +rating3 CHAR(60), +rating4 CHAR(60), +rating5 CHAR(60), +rating6 CHAR(60) ) +; + +-- #RatingDomain table containing the domain values for each CART rating for each interp +CREATE TABLE #RatingDomain +(id INT IDENTITY (1,1), +rating_key CHAR(60), +attributename CHAR(60), +rating_class CHAR(60), +rating_value INT ) +; + +-- #DateStamps table to store survey area datestamps (sacatalog.saverest) +CREATE TABLE #DateStamps +(landunit CHAR(20), +datestamp VARCHAR(32) ) +; + +-- #LandunitMetadata table to store landunit metadata (survey area and saverest) which comes from #DateStamps +CREATE TABLE #LandunitMetadata +(landunit CHAR(20), +soils_metadata VARCHAR(150) ) +; + +-- End of CREATE TABLE section + +-- Populate #SDV with interp metadata +INSERT INTO #SDV (attributename, attributecolumnname, attributelogicaldatatype, attributetype, +attributeuom, nasisrulename, rulekey, ruledesign, notratedphrase, resultcolumnname, +effectivelogicaldatatype, attributefieldsize, maplegendxml, maplegendkey, attributedescription, +sqlwhereclause, secondaryconcolname, tiebreaklowlabel, tiebreakhighlabel) +SELECT sdv.attributename, sdv.attributecolumnname, sdv.attributelogicaldatatype, sdv.attributetype, +sdv.attributeuom, sdv.nasisrulename, md.rulekey, md.ruledesign, sdv.notratedphrase, sdv.resultcolumnname, +sdv.effectivelogicaldatatype, sdv.attributefieldsize, sdv.maplegendxml, sdv.maplegendkey, sdv.attributedescription, +sdv.sqlwhereclause, sdv.secondaryconcolname,tiebreaklowlabel, tiebreakhighlabel +FROM sdvattribute sdv +LEFT OUTER JOIN distinterpmd md ON sdv.nasisrulename = md.rulename +WHERE sdv.attributename IN ('Agricultural Organic Soil Subsidence', 'Soil Susceptibility to Compaction', 'Organic Matter Depletion', 'Surface Salt Concentration', 'Limitations for Aerobic Soil Organisms', 'Hydric Rating by Map Unit') +GROUP BY md.rulekey, sdv.attributename, sdv.attributecolumnname, sdv.attributelogicaldatatype, sdv.attributetype, sdv.attributeuom, sdv.nasisrulename, sdv.resultcolumnname, sdv.effectivelogicaldatatype, +sdv.attributefieldsize, md.ruledesign, sdv.notratedphrase, sdv.maplegendxml, sdv.maplegendkey, sdv.attributedescription, sqlwhereclause, secondaryconcolname, tiebreaklowlabel, tiebreakhighlabel +; + +-- Populate #AoiAcres table +INSERT INTO #AoiAcres (aoiid, landunit, landunit_acres ) +SELECT aoiid, landunit, +SUM( ROUND( ( ( GEOGRAPHY::STGeomFromWKB(aoigeom.STAsBinary(), 4326 ).STArea() ) / 4046.8564224 ), 3 ) ) AS landunit_acres +FROM #AoiTable +GROUP BY aoiid, landunit +; + +-- Populate #AoiSoils table with intersected soil polygon geometry +INSERT INTO #AoiSoils (aoiid, landunit, mukey, soilgeom) +SELECT A.aoiid, A.landunit, M.mukey, M.mupolygongeo.STIntersection(A.aoigeom ) AS soilgeom +FROM mupolygon M, #AoiTable A +WHERE mupolygongeo.STIntersects(A.aoigeom) = 1 +; + +-- Populate #AoiSoils2 Soil geometry with landunit attribute +INSERT INTO #AoiSoils2 +SELECT aoiid, polyid, landunit, mukey, +ROUND((( GEOGRAPHY::STGeomFromWKB(soilgeom.STAsBinary(), 4326 ).MakeValid().STArea() ) / 4046.8564224 ), 3 ) AS poly_acres, +(GEOGRAPHY::STGeomFromWKB(soilgeom.STAsBinary(), 4326 ).MakeValid()) AS soilgeog +FROM #AoiSoils +; + +-- Populate #M2 soil map unit acres, aggregated by mukey (merges polygons together) +INSERT INTO #M2 +SELECT DISTINCT M1.aoiid, M1.landunit, M1.mukey, +ROUND (SUM (M1.poly_acres) OVER(PARTITION BY M1.landunit, M1.mukey), 3) AS mapunit_acres +FROM #AoiSoils2 AS M1 +GROUP BY M1.aoiid, M1.landunit, M1.mukey, M1.poly_acres +; + +-- Populate #FC table with Farm Land Class +INSERT INTO #FC +SELECT fcc.aoiid, fcc.landunit, mu.mukey, mapunit_acres, +CASE WHEN farmlndcl IS NULL THEN 'Not rated' +WHEN farmlndcl = 'All areas are prime farmland' THEN 'Prime' +WHEN farmlndcl LIKE 'Prime farmland if%' THEN 'Prime if' +WHEN farmlndcl = 'Farmland of statewide importance' THEN 'State' +WHEN farmlndcl LIKE 'Farmland of statewide importance, if%' THEN 'State if' +WHEN farmlndcl = 'Farmland of local importance' THEN 'Local' +WHEN farmlndcl LIKE 'Farmland of local importance, if%' THEN 'Local if' +WHEN farmlndcl = 'Farmland of unique importance' THEN 'Unique' +ELSE 'Not Prime' +END AS farmlndclass, +CASE WHEN farmlndcl IS NULL THEN 'Not rated' +WHEN farmlndcl = 'All areas are prime farmland' THEN 1 +WHEN farmlndcl LIKE 'Prime farmland if%' THEN 1 +WHEN farmlndcl = 'Farmland of statewide importance' THEN 1 +WHEN farmlndcl LIKE 'Farmland of statewide importance, if%' THEN 1 +WHEN farmlndcl = 'Farmland of local importance' THEN 1 +WHEN farmlndcl LIKE 'Farmland of local importance, if%' THEN 1 +WHEN farmlndcl = 'Farmland of unique importance' THEN 1 +ELSE 0 +END AS farmlndclassvalue, landunit_acres +FROM #M2 AS fcc +INNER JOIN mapunit AS mu ON mu.mukey = fcc.mukey +INNER JOIN #AoiAcres ON #AoiAcres.aoiid=fcc.aoiid +; + +INSERT INTO #FC2 +SELECT aoiid, landunit, mukey, mapunit_acres, farmlndclass, farmlndclassvalue, landunit_acres, CASE WHEN mapunit_acres = 0 THEN 0 WHEN landunit_acres = 0 THEN 0 ELSE +ROUND ((mapunit_acres / landunit_acres) * 100.0, 2) END AS farmac_pct, SUM (mapunit_acres) OVER(PARTITION BY landunit) AS farm_ac_sum, ROUND (SUM ((mapunit_acres / landunit_acres) * 100.0) OVER(PARTITION BY landunit), 0) AS farmac_sum_pct +FROM #FC +WHERE farmlndclassvalue = 1 + +-- Enviromental Assessment +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #FC2.landunit, 'Farm Class' AS attributename, +CASE WHEN farm_ac_sum > 0 THEN 1 ELSE 0 END AS rating_value, CASE WHEN farm_ac_sum > 0 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #AoiAcres +LEFT OUTER JOIN #FC2 ON #AoiAcres.aoiid=#FC2.aoiid +; + + +-- Easements +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #FC2.landunit, 'Easements Farm Class' AS attributename, +CASE WHEN farmac_sum_pct >= 50 THEN 1 ELSE 0 END AS rating_value, CASE WHEN farmac_sum_pct>= 50 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #AoiAcres +LEFT OUTER JOIN #FC2 ON #AoiAcres.aoiid=#FC2.aoiid +; + + + +-- Populate #M4 table with component level data with cokey, comppct_r and mapunit sum-of-comppct_r +INSERT INTO #M4 +SELECT M2.aoiid, M2.landunit, M2.mukey, mapunit_acres, CO.cokey, CO.compname, CO.comppct_r, CO.majcompflag, +SUM (CO.comppct_r) OVER(PARTITION BY M2.landunit, M2.mukey) AS mu_pct_sum, (SELECT SUM (CCO.comppct_r) +FROM #M2 AS MM2 +INNER JOIN component AS CCO ON CCO.mukey = MM2.mukey AND M2.mukey = MM2.mukey AND majcompflag = 'Yes' AND M2.landunit = MM2.landunit) AS major_mu_pct_sum, +drainagecl +FROM #M2 AS M2 +INNER JOIN component AS CO ON CO.mukey = M2.mukey +GROUP BY M2.aoiid, M2.landunit, M2.mukey, mapunit_acres, CO.cokey, CO.compname, CO.comppct_r, CO.majcompflag, drainagecl +; + +-- Populate #DateStamps with survey area dates for all soil mapunits involved +INSERT INTO #DateStamps +SELECT DISTINCT AM.landunit, ([SC].[areasymbol] + ' ' + CONVERT(VARCHAR(32),[SC].[saverest],120) ) AS datestamp +FROM #M4 AM +INNER JOIN mapunit Mu ON AM.mukey = Mu.mukey +INNER JOIN legend LG ON Mu.lkey = LG.lkey +INNER JOIN sacatalog SC ON Lg.areasymbol = SC.areasymbol +; + +-- Populate #LandunitMetadata table with landunit soils-metadata +-- +INSERT INTO #LandunitMetadata +SELECT DISTINCT +landunit, +STUFF((SELECT ' | ' + CAST([datestamp] AS VARCHAR(30)) +FROM #DateStamps dt2 +WHERE dt1.landunit = dt2.landunit +FOR XML PATH ('') ), 1, 2, '') AS soils_metadata +FROM #DateStamps dt1 +; + +-- END OF STATIC SECTION +-- ************************************************************************************************ + + +-- BEGIN QUERIES FOR SOIL PROPERTIES... +-- ************************************************************************************************ + +--- START DRAINAGE CLASS-------- +CREATE TABLE #drain +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(280), +comppct_r INT, +majcompflag CHAR(4), +mu_pct_sum INT, +major_mu_pct_sum INT, +drainagecl CHAR(40), +adj_comp_pct DECIMAL (6, 2) +) +; + +INSERT INTO #drain +SELECT #M4.aoiid, #M4.landunit, #AoiAcres.landunit_acres, mukey, mapunit_acres, cokey, compname, +comppct_r, majcompflag, mu_pct_sum, major_mu_pct_sum, drainagecl, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M4 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #M4.aoiid +; + +CREATE TABLE #drain2 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(280), +comppct_r INT, +majcompflag CHAR(4), +mu_pct_sum INT, +drainagecl CHAR(40), +adj_comp_pct DECIMAL (6, 2), +co_acres DECIMAL (10, 2)) +; + +-- Populate drainage class for mapunit and components +INSERT INTO #drain2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, compname, comppct_r, +majcompflag, mu_pct_sum, drainagecl, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 2) AS co_acres +FROM #drain +; + + +CREATE TABLE #drain3 +( aoiid INT , +landunit CHAR(20), +landunit_acres REAL, +sum_drain_ac REAL) +; +INSERT INTO #drain3 (aoiid, landunit, landunit_acres, sum_drain_ac ) +SELECT DISTINCT aoiid , +landunit , +landunit_acres , +SUM (CASE WHEN drainagecl = 'Poorly drained' THEN co_acres +WHEN drainagecl = 'Very poorly drained' THEN co_acres ELSE 0 END) over(partition by aoiid) as sum_drain_ac +FROM #drain2; + +CREATE TABLE #drain4 +( aoiid INT , +landunit CHAR(20), +landunit_acres REAL, +drain_pct REAL) +; +INSERT INTO #drain4 (aoiid, landunit, landunit_acres, drain_pct ) +SELECT aoiid, landunit, landunit_acres, CASE WHEN sum_drain_ac = 0 THEN 0 ELSE sum_drain_ac/landunit_acres END AS drain_pct +FROM #drain3; + + +-- Easement Drainage End +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Easements Drainage' AS attributename, +CASE WHEN drain_pct >= .50 THEN 1 ELSE 0 END AS rating_value, +CASE WHEN drain_pct >= .50 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #drain4 ; + +; + +-- Begin SOC +CREATE TABLE #acpf +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +awc_r FLOAT, +restrictiondepth INT, +restrictiodepth INT, +TOPrestriction CHAR(80), +tcl CHAR(40), +thickness INT, +om_r FLOAT, +dbthirdbar_r FLOAT, +fragvol INT, +texture CHAR(40), +chkey INT, +mu_pct_sum INT) +; + +INSERT INTO #acpf +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +MA44.cokey, +MA44.compname, +MA44.comppct_r, +MA44.majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +awc_r , +(SELECT CAST(MIN(resdept_r) AS INTEGER) FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND reskind IS NOT NULL) AS restrictiondepth, +(SELECT CASE WHEN MIN (resdept_r) IS NULL THEN 200 ELSE CAST (MIN (resdept_r) AS INT) END FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND reskind IS NOT NULL) AS restrictiodepth, +(SELECT TOP 1 reskind FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND corestrictions.reskind IN ('Lithic bedrock','Duripan', 'Densic bedrock', 'Paralithic bedrock', 'Fragipan', 'Natric', 'Ortstein', 'Permafrost', 'Petrocalcic', 'Petrogypsic') +AND reskind IS NOT NULL ORDER BY resdept_r) AS TOPrestriction, +(SELECT TOP 1 texcl FROM chtexturegrp AS chtg INNER JOIN chtexture AS cht ON chtg.chtgkey=cht.chtgkey AND chtg.rvindicator = 'yes' AND chtg.chkey=cha.chkey) AS tcl, +CASE WHEN (hzdepb_r-hzdept_r) IS NULL THEN 0 ELSE CAST((hzdepb_r - hzdept_r) AS INT) END AS thickness, +CASE WHEN texture LIKE '%PM%' AND (om_r) IS NULL THEN 35 +WHEN texture LIKE '%MUCK%' AND (om_r) IS NULL THEN 35 +WHEN texture LIKE '%PEAT%' AND (om_r) IS NULL THEN 35 ELSE om_r END AS om_r , +CASE WHEN texture LIKE '%PM%' AND (dbthirdbar_r) IS NULL THEN 0.25 +WHEN texture LIKE '%MUCK%' AND (dbthirdbar_r) IS NULL THEN 0.25 +WHEN texture LIKE '%PEAT%' AND (dbthirdbar_r) IS NULL THEN 0.25 ELSE dbthirdbar_r END AS dbthirdbar_r, +(SELECT CASE WHEN SUM (cf.fragvol_r) IS NULL THEN 0 ELSE CAST (SUM(cf.fragvol_r) AS INT) END FROM chfrags cf WHERE cf.chkey = cha.chkey) as fragvol, +texture, +cha.chkey, +mu_pct_sum +FROM (#M4 AS MA44 INNER JOIN (component AS coa INNER JOIN chorizon AS cha ON cha.cokey = coa.cokey ) ON MA44.cokey=coa.cokey AND MA44.majcompflag = 'yes' ) +LEFT OUTER JOIN chtexturegrp AS ct ON cha.chkey=ct.chkey and ct.rvindicator = 'yes' +and CASE WHEN hzdept_r IS NULL THEN 2 +WHEN texture LIKE '%PM%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%MUCK%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%PEAT%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%PM%' AND dbthirdbar_r IS NULL THEN 1 +WHEN texture LIKE '%MUCK%' AND dbthirdbar_r IS NULL THEN 1 +WHEN texture LIKE '%PEAT%' AND dbthirdbar_r IS NULL THEN 1 +WHEN om_r IS NULL THEN 2 +WHEN om_r = 0 THEN 2 +WHEN dbthirdbar_r IS NULL THEN 2 +WHEN dbthirdbar_r = 0 THEN 2 +ELSE 1 END = 1 +; + +-- Sums the Component Percent and eliminate duplicate values by cokey +SELECT landunit, aoiid, mapunit_acres , mukey, cokey, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +INTO #muacpf +FROM #acpf AS acpf2 +WHERE acpf2.cokey=cokey +GROUP BY landunit, aoiid, mapunit_acres , mukey, cokey, comppct_r, mu_pct_sum +; + +-- grab top depth for the mineral soil and will use it later to get mineral surface properties +-- Because of SOC this wasnt really needed. If any error add statement below back +SELECT compname, cokey, MIN(hzdept_r) AS min_t +INTO #hortopdepth +FROM #acpf +--WHERE texture NOT LIKE '%PM%' and texture NOT LIKE '%DOM' and texture NOT LIKE '%MPT%' AND texture NOT LIKE '%MUCK' AND texture NOT LIKE '%PEAT%' +GROUP BY cokey, compname +; + +-- Combine the mineral surface to grab surface mineral properties +SELECT #hortopdepth.cokey, +hzname, +hzdept_r, +hzdepb_r, +thickness, +texture AS texture_surf, +om_r AS om_surf, +dbthirdbar_r AS db_surf, +fragvol AS frag_surf, +chkey +INTO #acpf2 +FROM #hortopdepth +INNER JOIN #acpf on #hortopdepth.cokey=#acpf.cokey AND #hortopdepth.min_t = #acpf.hzdept_r +ORDER BY #hortopdepth.cokey, hzname +; + +SELECT +mukey, +cokey, +hzname, +restrictiodepth, +hzdept_r, +hzdepb_r, +CASE WHEN (hzdepb_r-hzdept_r) IS NULL THEN 0 ELSE CAST ((hzdepb_r - hzdept_r) AS INT) END AS thickness, +texture, +CASE WHEN dbthirdbar_r IS NULL THEN 0 ELSE dbthirdbar_r END AS dbthirdbar_r, +CASE WHEN fragvol IS NULL THEN 0 ELSE fragvol END AS fragvol, +CASE when om_r IS NULL THEN 0 ELSE om_r END AS om_r, +chkey +INTO #acpfhzn +FROM #acpf +; + +-- Depth ranges for SOC --- +SELECT hzname, chkey, comppct_r, hzdept_r, hzdepb_r, thickness, +CASE WHEN hzdept_r < 150 then hzdept_r ELSE 0 END AS InRangeTop_0_150, +CASE WHEN hzdepb_r <= 150 THEN hzdepb_r WHEN hzdepb_r > 150 and hzdept_r < 150 THEN 150 ELSE 0 END AS InRangeBot_0_150, +CASE WHEN hzdept_r < 5 then hzdept_r ELSE 0 END AS InRangeTop_0_5, +CASE WHEN hzdepb_r <= 5 THEN hzdepb_r WHEN hzdepb_r > 5 and hzdept_r < 5 THEN 5 ELSE 0 END AS InRangeBot_0_5, +CASE WHEN hzdept_r < 30 then hzdept_r ELSE 0 END AS InRangeTop_0_30, +CASE WHEN hzdepb_r <= 30 THEN hzdepb_r WHEN hzdepb_r > 30 and hzdept_r < 30 THEN 30 ELSE 0 END AS InRangeBot_0_30, +--5 to 15 +CASE WHEN hzdepb_r < 5 THEN 0 +WHEN hzdept_r >15 THEN 0 +WHEN hzdepb_r >= 5 AND hzdept_r < 5 THEN 5 +WHEN hzdept_r < 5 THEN 0 +WHEN hzdept_r < 15 then hzdept_r ELSE 5 END AS InRangeTop_5_15 , +CASE WHEN hzdept_r > 15 THEN 0 +WHEN hzdepb_r < 5 THEN 0 +WHEN hzdepb_r <= 15 THEN hzdepb_r WHEN hzdepb_r > 15 and hzdept_r < 15 THEN 15 ELSE 5 END AS InRangeBot_5_15, +--15 to 30 +CASE WHEN hzdepb_r < 15 THEN 0 +WHEN hzdept_r >30 THEN 0 +WHEN hzdepb_r >= 15 AND hzdept_r < 15 THEN 15 +WHEN hzdept_r < 15 THEN 0 +WHEN hzdept_r < 30 then hzdept_r ELSE 15 END AS InRangeTop_15_30 , +CASE WHEN hzdept_r > 30 THEN 0 +WHEN hzdepb_r < 15 THEN 0 +WHEN hzdepb_r <= 30 THEN hzdepb_r WHEN hzdepb_r > 30 and hzdept_r < 30 THEN 30 ELSE 15 END AS InRangeBot_15_30, +--30 to 60 +CASE WHEN hzdepb_r < 30 THEN 0 +WHEN hzdept_r >60 THEN 0 +WHEN hzdepb_r >= 30 AND hzdept_r < 30 THEN 30 +WHEN hzdept_r < 30 THEN 0 +WHEN hzdept_r < 60 then hzdept_r ELSE 30 END AS InRangeTop_30_60 , +CASE WHEN hzdept_r > 60 THEN 0 +WHEN hzdepb_r < 30 THEN 0 +WHEN hzdepb_r <= 60 THEN hzdepb_r WHEN hzdepb_r > 60 and hzdept_r < 60 THEN 60 ELSE 30 END AS InRangeBot_30_60, +--60 to 100 +CASE WHEN hzdepb_r < 60 THEN 0 +WHEN hzdept_r >100 THEN 0 +WHEN hzdepb_r >= 60 AND hzdept_r < 60 THEN 60 +WHEN hzdept_r < 60 THEN 0 +WHEN hzdept_r < 100 then hzdept_r ELSE 60 END AS InRangeTop_60_100 , +CASE WHEN hzdept_r > 100 THEN 0 +WHEN hzdepb_r < 60 THEN 0 +WHEN hzdepb_r <= 100 THEN hzdepb_r WHEN hzdepb_r > 100 and hzdept_r < 100 THEN 100 ELSE 60 END AS InRangeBot_60_100, +--100 to 200 +CASE WHEN hzdepb_r < 100 THEN 0 +WHEN hzdept_r >200 THEN 0 +WHEN hzdepb_r >= 100 AND hzdept_r < 100 THEN 100 +WHEN hzdept_r < 100 THEN 0 +WHEN hzdept_r < 200 then hzdept_r ELSE 100 END AS InRangeTop_100_200 , +CASE WHEN hzdept_r > 200 THEN 0 +WHEN hzdepb_r < 100 THEN 0 +WHEN hzdepb_r <= 200 THEN hzdepb_r WHEN hzdepb_r > 200 and hzdept_r < 200 THEN 200 ELSE 100 END AS InRangeBot_100_200, +CASE WHEN hzdepb_r < 20 THEN 0 +WHEN hzdept_r >50 THEN 0 +WHEN hzdepb_r >= 20 AND hzdept_r < 20 THEN 20 +WHEN hzdept_r < 20 THEN 0 +WHEN hzdept_r < 50 then hzdept_r ELSE 20 END AS InRangeTop_20_50 , +CASE WHEN hzdept_r > 50 THEN 0 +WHEN hzdepb_r < 20 THEN 0 +WHEN hzdepb_r <= 50 THEN hzdepb_r WHEN hzdepb_r > 50 and hzdept_r < 50 THEN 50 ELSE 20 END AS InRangeBot_20_50, +CASE WHEN hzdepb_r < 50 THEN 0 +WHEN hzdept_r >100 THEN 0 +WHEN hzdepb_r >= 50 AND hzdept_r < 50 THEN 50 +WHEN hzdept_r < 50 THEN 0 +WHEN hzdept_r < 100 then hzdept_r ELSE 50 END AS InRangeTop_50_100 , +CASE WHEN hzdept_r > 100 THEN 0 +WHEN hzdepb_r < 50 THEN 0 +WHEN hzdepb_r <= 100 THEN hzdepb_r WHEN hzdepb_r > 100 and hzdept_r < 100 THEN 100 ELSE 50 END AS InRangeBot_50_100, +om_r, fragvol, dbthirdbar_r, cokey, mukey, 100.0 - fragvol AS frag_main +INTO #SOC +FROM #acpf +ORDER BY cokey, hzdept_r ASC, hzdepb_r ASC, chkey +; + +SELECT mukey, cokey, hzname, chkey, comppct_r, hzdept_r, hzdepb_r, thickness, +InRangeTop_0_150, +InRangeBot_0_150, +InRangeTop_0_30, +InRangeBot_0_30, +InRangeTop_20_50, +InRangeBot_20_50, +InRangeTop_50_100 , +InRangeBot_50_100, +(( ((InRangeBot_0_150 - InRangeTop_0_150) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_150, +(( ((InRangeBot_0_30 - InRangeTop_0_30) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_30, +--Removed * ( comppct_r * 100 ) +((((InRangeBot_20_50 - InRangeTop_20_50) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_20_50, +--Removed * ( comppct_r * 100 ) +((((InRangeBot_50_100 - InRangeTop_50_100) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_50_100, +(( ((InRangeBot_0_5 - InRangeTop_0_5) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_5, +(( ((InRangeBot_5_15 - InRangeTop_5_15) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_5_15, +(( ((InRangeBot_15_30 - InRangeTop_15_30) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_15_30, +(( ((InRangeBot_30_60 - InRangeTop_30_60) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_30_60, +(( ((InRangeBot_60_100 - InRangeTop_60_100) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_60_100, +(( ((InRangeBot_100_200 - InRangeTop_100_200) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_100_200 +--Removed * ( comppct_r * 100 ) +INTO #SOC2 +FROM #SOC +ORDER BY mukey ,cokey, comppct_r DESC, hzdept_r ASC, hzdepb_r ASC, chkey +; + +--Aggregates and sum it by component. +SELECT DISTINCT cokey, mukey, +ROUND (SUM (HZ_SOC_0_150) over(PARTITION BY cokey) ,4) AS CO_SOC_0_150, +ROUND (SUM (HZ_SOC_0_30) over(PARTITION BY cokey) ,4) AS CO_SOC_0_30, +ROUND (SUM (HZ_SOC_20_50) over(PARTITION BY cokey),4) AS CO_SOC_20_50, +ROUND (SUM (HZ_SOC_50_100) over(PARTITION BY cokey),4) AS CO_SOC_50_100, +ROUND (SUM (HZ_SOC_0_5) over(PARTITION BY cokey),4) AS CO_SOC_0_5, +ROUND (SUM (HZ_SOC_5_15) over(PARTITION BY cokey),4) AS CO_SOC_5_15, +ROUND (SUM (HZ_SOC_15_30) over(PARTITION BY cokey),4) AS CO_SOC_15_30, +ROUND (SUM (HZ_SOC_30_60) over(PARTITION BY cokey),4) AS CO_SOC_30_60, +ROUND (SUM (HZ_SOC_60_100) over(PARTITION BY cokey),4) AS CO_SOC_60_100, +ROUND (SUM (HZ_SOC_100_200) over(PARTITION BY cokey),4) AS CO_SOC_100_200 +INTO #SOC3 +FROM #SOC2 +GROUP BY mukey, cokey, HZ_SOC_0_150, HZ_SOC_0_30, HZ_SOC_20_50, HZ_SOC_50_100, HZ_SOC_0_5, HZ_SOC_5_15, HZ_SOC_15_30, HZ_SOC_30_60, HZ_SOC_60_100, HZ_SOC_100_200 +; + +SELECT DISTINCT #SOC3.cokey, #SOC3.mukey, adj_comp_pct AS WEIGHTED_COMP_PCT, +CO_SOC_0_30, CO_SOC_0_30 * adj_comp_pct AS WEIGHTED_CO_SOC_0_30, +CO_SOC_20_50, CO_SOC_20_50 * adj_comp_pct AS WEIGHTED_CO_SOC_20_50, +CO_SOC_50_100, CO_SOC_50_100 * adj_comp_pct AS WEIGHTED_CO_SOC_50_100, +CO_SOC_0_150, CO_SOC_0_150 * adj_comp_pct AS WEIGHTED_CO_SOC_0_150, +CO_SOC_0_5, CO_SOC_0_5 * adj_comp_pct AS WEIGHTED_CO_SOC_0_5, +CO_SOC_5_15, CO_SOC_5_15 * adj_comp_pct AS WEIGHTED_CO_SOC_5_15, +CO_SOC_15_30, CO_SOC_15_30 * adj_comp_pct AS WEIGHTED_CO_SOC_15_30, +CO_SOC_30_60, CO_SOC_30_60 * adj_comp_pct AS WEIGHTED_CO_SOC_30_60, +CO_SOC_60_100, CO_SOC_60_100 * adj_comp_pct AS WEIGHTED_CO_SOC_60_100, +CO_SOC_100_200 , CO_SOC_100_200 * adj_comp_pct AS WEIGHTED_CO_SOC_100_200 +INTO #SOC4 +FROM #SOC3 +INNER JOIN #muacpf ON #muacpf.cokey = #SOC3.cokey +GROUP BY #SOC3.cokey, #SOC3.mukey, adj_comp_pct , CO_SOC_0_30, CO_SOC_20_50,CO_SOC_50_100, CO_SOC_0_150, CO_SOC_0_5, CO_SOC_5_15, CO_SOC_15_30, CO_SOC_30_60,CO_SOC_60_100, CO_SOC_100_200 +; + +-- Unit Conversion +SELECT DISTINCT #M4.mukey, #M4.aoiid , +#M4.landunit, +landunit_acres, mapunit_acres, ROUND (SUM (WEIGHTED_CO_SOC_0_30) OVER(PARTITION BY #M4.aoiid, #SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_30 , +ROUND (SUM (WEIGHTED_CO_SOC_20_50) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_20_50 , +ROUND (SUM (WEIGHTED_CO_SOC_50_100) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_50_100, +ROUND (SUM (WEIGHTED_CO_SOC_0_150) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_150, +ROUND (SUM (WEIGHTED_CO_SOC_0_5) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_5 , +ROUND (SUM (WEIGHTED_CO_SOC_5_15) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_5_15 , +ROUND (SUM (WEIGHTED_CO_SOC_15_30) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_15_30 , +ROUND (SUM (WEIGHTED_CO_SOC_30_60) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_30_60 , +ROUND (SUM (WEIGHTED_CO_SOC_60_100) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_60_100 , +ROUND (SUM (WEIGHTED_CO_SOC_100_200) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_100_200 +INTO #SOC5 +FROM #SOC4 +LEFT OUTER JOIN #M4 ON #M4.mukey = #SOC4.mukey +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #M4.aoiid +GROUP BY #M4.mukey, #SOC4.mukey, #M4.aoiid , +#M4.landunit, +landunit_acres, mapunit_acres,WEIGHTED_CO_SOC_0_30, WEIGHTED_CO_SOC_20_50, WEIGHTED_CO_SOC_50_100, WEIGHTED_CO_SOC_0_5, WEIGHTED_CO_SOC_5_15, WEIGHTED_CO_SOC_15_30, WEIGHTED_CO_SOC_30_60, WEIGHTED_CO_SOC_60_100, WEIGHTED_CO_SOC_100_200, #SOC4.WEIGHTED_CO_SOC_0_150 +; + +CREATE TABLE #SOC6 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +SOCSTOCK_0_5_Weighted_Average DECIMAL (10, 2), +SOCSTOCK_0_30_Weighted_Average DECIMAL (10, 2), +SOCSTOCK_0_150_Weighted_Average DECIMAL (10, 2) +) +; + +INSERT INTO #SOC6 +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_5) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_5_Weighted_Average, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_30) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_30_Weighted_Average, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_150) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_150_Weighted_Average +FROM #SOC5 +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, SOCSTOCK_0_5, SOCSTOCK_0_30, SOCSTOCK_0_150 +; + +--Begin AWS +CREATE TABLE #acpfaws +(aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres DECIMAL (10, 2), +mu_pct_sum INT, +aws0150wta DECIMAL (10, 2) ) +; + +INSERT INTO #acpfaws +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +mu_pct_sum, +aws0150wta +FROM (#M4 AS MA44 +INNER JOIN muaggatt AS mt on MA44.mukey = mt.mukey ) +; + +CREATE TABLE #aws1 +( aoiid INT, +landunit CHAR(20), +landunit_acres DECIMAL (10, 2), +AWS_Weighted_Average0_150 DECIMAL (10, 2) ) +; + +INSERT INTO #aws1 +SELECT DISTINCT +#acpfaws.aoiid , +#acpfaws.landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * aws0150wta) OVER(PARTITION BY #acpfaws.aoiid) AS AWS_Weighted_Average0_150 +FROM #acpfaws +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #acpfaws.aoiid +GROUP BY #acpfaws.aoiid, #acpfaws.landunit, mapunit_acres, landunit_acres, aws0150wta +; + +--Begin Aggregate Stability +CREATE TABLE #agg1 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml DECIMAL (6, 2) , +omr DECIMAL (6, 2) , +omh DECIMAL (6, 2), +sar_l FLOAT, +sar_r FLOAT, +sar_h FLOAT, +cec7_l FLOAT, +cec7_r FLOAT, +cec7_h FLOAT, +ec_l FLOAT, +ec_r FLOAT, +ec_h FLOAT, +esp_l DECIMAL (10, 2), +esp_r DECIMAL (10, 2), +esp_h DECIMAL (10, 2), +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg1 +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +MA44.cokey, +MA44.compname, +MA44.comppct_r, +MA44.majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +CASE WHEN claytotal_l > 92 then 92 WHEN claytotal_l < 8 THEN 8 ELSE claytotal_l END AS claytotall, +CASE WHEN claytotal_r > 92 then 92 ELSE claytotal_r END AS claytotalr, +CASE WHEN claytotal_h > 92 then 92 ELSE claytotal_h END AS claytotalh, +CASE WHEN om_l <0.01 THEN 0.05 WHEN om_l > 17 then 17 ELSE om_l END AS oml, +CASE WHEN om_r <0.01 THEN 0.05 WHEN om_r > 17 then 17 ELSE om_r END AS omr , +CASE WHEN om_h <0.01 THEN 0.05 WHEN om_h > 17 then 17 ELSE om_h END AS omh , +sar_l, +sar_r, +sar_h, +cec7_l, +cec7_r, +cec7_h, +ec_l, +ec_r, +ec_h, +(100 * (-0.0126 + 0.01475 * sar_l)) / (1 + (-0.0126 + 0.01475 * sar_l)) AS esp_l, +(100 * (-0.0126 + 0.01475 * sar_r)) / (1 + (-0.0126 + 0.01475 * sar_r)) AS esp_r, +(100 * (-0.0126 + 0.01475 * sar_h)) / (1 + (-0.0126 + 0.01475 * sar_h)) AS esp_h, +(SELECT TOP 1 texcl FROM chtexturegrp AS chtg INNER JOIN chtexture AS cht ON chtg.chtgkey = cht.chtgkey AND chtg.rvindicator = 'yes' AND chtg.chkey=cha.chkey) AS tcl, +major_mu_pct_sum, mu_pct_sum +FROM (#M4 AS MA44 INNER JOIN (component AS coa INNER JOIN chorizon AS cha ON cha.cokey = coa.cokey AND cha.hzdept_r < 15 ) ON MA44.cokey = coa.cokey AND MA44.majcompflag = 'yes' ) +; + +CREATE TABLE #agg2 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml FLOAT, +omr FLOAT, +omh FLOAT, +sar_l FLOAT, +sar_r FLOAT, +sar_h FLOAT, +cec7_l FLOAT, +cec7_r FLOAT, +cec7_h FLOAT, +ec_l FLOAT, +ec_r FLOAT, +ec_h FLOAT, +esp_l FLOAT, +esp_r FLOAT, +esp_h FLOAT, +tcl CHAR(40), +sandy INT, +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg2 +SELECT DISTINCT +aoiid , +landunit, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +claytotall, +claytotalr, +claytotalh, +oml , +omr , +omh , +sar_l, +sar_r, +sar_h, +cec7_l, +cec7_r, +cec7_h, +ec_l, +ec_r, +ec_h, +CASE WHEN cec7_l < 50 + 0 AND cec7_l IS NOT NULL AND sar_l IS NOT NULL AND sar_l !=0 AND sar_l < 40 + 0 AND ec_l < 20 + 0 THEN esp_l +WHEN sar_l !=0 AND sar_l IS NOT NULL THEN 1.5 * sar_l / (1 + 0.015 * sar_l) +WHEN sar_l < 0.01 THEN 0 ELSE NULL END AS esp_l, +CASE WHEN cec7_r < 50 + 0 AND cec7_r IS NOT NULL AND sar_r IS NOT NULL AND sar_r !=0 AND sar_r < 40 + 0 AND ec_r < 20 + 0 THEN esp_r +WHEN sar_r !=0 and sar_r IS NOT NULL then 1.5 * sar_r / (1 + 0.015 * sar_r) +WHEN sar_r < 0.01 THEN 0 ELSE NULL END AS esp_r, +CASE WHEN cec7_h < 50 + 0 AND cec7_h IS NOT NULL AND sar_h IS NOT NULL AND sar_h !=0 AND sar_h < 40 + 0 AND ec_h < 20 + 0 THEN esp_h +WHEN sar_h !=0 AND sar_h IS NOT NULL THEN 1.5 * sar_h / (1 + 0.015 * sar_h) +WHEN sar_h < 0.01 THEN 0 ELSE NULL END AS esp_h, +tcl, +CASE WHEN tcl = 'Loamy coarse sand' THEN 1 +WHEN tcl = 'Loamy fine sand' THEN 1 +WHEN tcl = 'Loamy sand' THEN 1 +WHEN tcl = 'Sand' THEN 1 +WHEN tcl = 'Coarse sand' THEN 1 +WHEN tcl = 'Fine sand' THEN 1 ELSE 0 END AS sandy, +major_mu_pct_sum, +mu_pct_sum +FROM #agg1 +; + +CREATE TABLE #agg3 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml FLOAT, +omr FLOAT, +omh FLOAT, +sandy INT, +AgStab_l DECIMAL (10, 2), +AgStab_r DECIMAL (10, 2), +AgStab_h DECIMAL (10, 2), +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg3 +SELECT DISTINCT +aoiid, +landunit, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +claytotall, +claytotalr, +claytotalh, +oml, +omr, +omh, +sandy, +49.7 + 13.7 * LOG(oml) + 0.61 * claytotall - 0.0045 * POWER(claytotall, 2) - 0.28 * esp_h - 0.06 * POWER(esp_h, 2) AS AgStab_l, +49.7 + 13.7 * LOG(omr) + 0.61 * claytotalr - 0.0045 * POWER(claytotalr, 2) - 0.28 * esp_r - 0.06 * POWER(esp_r, 2) AS AgStab_r, +49.7 + 13.7 * LOG(omh) + 0.61 * claytotalh - 0.0045 * POWER(claytotalh, 2) - 0.28 * esp_l - 0.06 * POWER(esp_l, 2) AS AgStab_h, +tcl, +major_mu_pct_sum, +mu_pct_sum +FROM #agg2 +; + +CREATE TABLE #agg4 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +AgStab_l FLOAT, +AgStab_r FLOAT, +AgStab_h FLOAT, +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT, +thickness INT, +AGG_InRangeTop_0_15 INT, +AGG_InRangeBot_0_15 INT ) +; + +INSERT INTO #agg4 +SELECT DISTINCT ag.aoiid , +ag.landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +CASE WHEN AgStab_l > 100 THEN 100 WHEN claytotall >= 0 AND claytotall < 5 THEN NULL WHEN sandy=1 THEN null WHEN oml > 20 THEN NULL ELSE AgStab_l END AS AgStab_l, +CASE WHEN AgStab_r > 100 THEN 100 WHEN claytotalr >= 0 AND claytotalr < 5 THEN NULL WHEN sandy=1 THEN null WHEN omr > 20 THEN NULL ELSE AgStab_r END AS AgStab_r, +CASE WHEN AgStab_h > 100 THEN 100 WHEN claytotalh >= 0 AND claytotalh < 5 THEN NULL WHEN sandy=1 THEN null WHEN omh > 20 THEN NULL ELSE AgStab_h END AS AgStab_h, +tcl, major_mu_pct_sum, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct, CASE WHEN hzdepb_r IS NULL THEN 0 +WHEN hzdept_r IS NULL THEN 0 ELSE hzdepb_r-hzdept_r END AS thickness, +CASE WHEN hzdept_r < 15 THEN hzdept_r ELSE 0 END AS AGG_InRangeTop_0_15, +CASE WHEN hzdepb_r <= 15 THEN hzdepb_r WHEN hzdepb_r > 15 and hzdept_r < 15 THEN 15 ELSE 0 END AS AGG_InRangeBot_0_15 +FROM #AoiAcres +LEFT OUTER JOIN #agg3 AS ag ON ag.aoiid = #AoiAcres.aoiid WHERE majcompflag = 'Yes' GROUP BY ag.aoiid , +ag.landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l , AgStab_h, AgStab_r, +claytotall, claytotalr, claytotalh, +sandy, +comppct_r, +major_mu_pct_sum, +mu_pct_sum, +oml, omr, omh, +tcl +; + +CREATE TABLE #agg5 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +AgStab_l FLOAT, +AgStab_r FLOAT, +AgStab_h FLOAT, +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT, +thickness INT, +AGG_InRangeTop_0_15 INT, +AGG_InRangeBot_0_15 INT, +InRangeThickness INT, +InRangeSumThickness INT ) +; + +INSERT INTO #agg5 +SELECT DISTINCT aoiid, +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l, +AgStab_r, +AgStab_h, +tcl, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +thickness, +AGG_InRangeTop_0_15, +AGG_InRangeBot_0_15, +CASE WHEN AGG_InRangeTop_0_15 IS NULL THEN 0 +WHEN AGG_InRangeBot_0_15 IS NULL THEN 0 ELSE AGG_InRangeBot_0_15 - AGG_InRangeTop_0_15 END AS InRangeThickness, +SUM (CASE WHEN AGG_InRangeTop_0_15 IS NULL THEN 0 +WHEN AGG_InRangeBot_0_15 IS NULL THEN 0 ELSE AGG_InRangeBot_0_15 - AGG_InRangeTop_0_15 END) OVER(PARTITION BY cokey, aoiid) AS InRangeSumThickness +FROM #agg4 +GROUP BY aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l, +AgStab_r, +AgStab_h, +tcl, major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +thickness, +AGG_InRangeTop_0_15, +AGG_InRangeBot_0_15 +; + +CREATE TABLE #agg6 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +localphase CHAR(60), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT , +--AGG_InRangeTop_0_15 INT, +--AGG_InRangeBot_0_15 INT, +--InRangeThickness INT, +--InRangeSumThickness INT, +--AgStab_l FLOAT, +--AgStab_r FLOAT, +--AgStab_h FLOAT, +comp_weighted_average_l FLOAT, +comp_weighted_average_r FLOAT, +comp_weighted_average_h FLOAT ) +; + +INSERT INTO #agg6 +SELECT DISTINCT aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +localphase, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_l) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_l, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_r) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_r, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_h) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_h +FROM #agg5 AS ag5 +WHERE InRangeSumThickness !=0 +GROUP BY aoiid, landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +localphase, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +-- AgStab_l , +--AgStab_r , +--AgStab_h , +--AGG_InRangeTop_0_15, +--AGG_InRangeBot_0_15, +InRangeThickness, InRangeSumThickness, +AgStab_l, AgStab_r, AgStab_h +; + +--Map unit Aggregation for mapunit table +CREATE TABLE #agg7 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +major_mu_pct_sum INT, +mu_pct_sum INT, +MU_SUM_AGG_L DECIMAL (10, 2), +MU_SUM_AGG_R DECIMAL (10, 2), +MU_SUM_AGG_H DECIMAL (10, 2) ) +--MU_Weighted_Average_R FLOAT ) +; + +-- Map Unit Aggregation +INSERT INTO #agg7 +SELECT DISTINCT aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +major_mu_pct_sum, +mu_pct_sum, +SUM (adj_comp_pct * comp_weighted_average_l) OVER(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_L, +SUM (adj_comp_pct * comp_weighted_average_r) OVER(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_R, +SUM (adj_comp_pct * comp_weighted_average_h) over(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_H +--(mapunit_acres/landunit_acres)*MU_SUM_AGG_R AS MU_Weighted_Average_R +FROM #agg6 AS ag6 +GROUP BY aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +comp_weighted_average_l, +comp_weighted_average_r, +comp_weighted_average_h +; + +CREATE TABLE #agg7a +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mapunit_acres FLOAT, +MU_SUM_AGG_L FLOAT, +MU_SUM_AGG_R FLOAT, +MU_SUM_AGG_H FLOAT ) +; + +INSERT INTO #agg7a +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +mapunit_acres, +CASE WHEN MU_SUM_AGG_R = 0 THEN 0 ELSE MU_SUM_AGG_L END AS MU_SUM_AGG_L , +MU_SUM_AGG_R , +CASE WHEN MU_SUM_AGG_R = 0 THEN 0 ELSE MU_SUM_AGG_H END AS MU_SUM_AGG_H +FROM #agg7 +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, MU_SUM_AGG_L, MU_SUM_AGG_R, MU_SUM_AGG_H +; + +CREATE TABLE #agg8 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +LU_AGG_Weighted_Average_L DECIMAL (10, 2), +LU_AGG_Weighted_Average_R DECIMAL (10, 2), +LU_AGG_Weighted_Average_H DECIMAL (10, 2) ) +; + +INSERT INTO #agg8 +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_L) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_L, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_R) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_R, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_H) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_H +FROM #agg7a +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, MU_SUM_AGG_L, MU_SUM_AGG_R, MU_SUM_AGG_H +; + +-- Flooding frequency and Ponding frequency +CREATE TABLE #pf +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres DECIMAL (10, 2), +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +flodfreq CHAR(20), +pondfreq CHAR(20), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #pf +SELECT DISTINCT +aoiid, +landunit, +M44.mukey, +mapunit_acres , +M44.cokey AS cokey, +M44.compname AS cname, +M44.comppct_r AS copct , +M44.majcompflag AS majcompflag, +(SELECT TOP 1 flodfreqcl FROM comonth, MetadataDomainMaster AS MD, MetadataDomainDetail AS DD WHERE comonth.cokey = M44.cokey AND flodfreqcl = ChoiceLabel AND DomainName = 'flooding_frequency_class' AND +MD.DomainID = DD.DomainID order by choicesequence desc) as flodfreq, +(SELECT TOP 1 pondfreqcl FROM comonth, MetadataDomainMaster AS MD, MetadataDomainDetail AS DD WHERE comonth.cokey = M44.cokey AND pondfreqcl = ChoiceLabel AND DomainName = 'ponding_frequency_class' AND +MD.DomainID = DD.DomainID ORDER BY choicesequence DESC) AS pondfreq, +major_mu_pct_sum, mu_pct_sum +FROM #M4 AS M44 +INNER JOIN comonth AS CM ON M44.cokey = CM.cokey AND M44.majcompflag = 'yes' +AND CASE +WHEN (flodfreqcl IN ('occasional', 'common', 'frequent', 'very frequent')) THEN 1 +WHEN (pondfreqcl IN ('occasional', 'common', 'frequent')) THEN 1 +ELSE 2 END = 1 +GROUP BY aoiid, landunit, M44.mukey, mapunit_acres, major_mu_pct_sum, mu_pct_sum, M44.cokey,M44.compname , M44.majcompflag, M44.comppct_r, flodfreqcl, pondfreqcl +; + +CREATE TABLE #pf1 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +flodfreq CHAR(20), +pondfreq CHAR(20), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT ) +; + +INSERT INTO #pf1 +SELECT DISTINCT pf.aoiid, pf.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, flodfreq, pondfreq, major_mu_pct_sum, mu_pct_sum, (1.0 * copct / NULLIF(major_mu_pct_sum, 0)) AS adj_comp_pct +FROM #AoiAcres +LEFT OUTER JOIN #pf AS pf ON pf.aoiid = #AoiAcres.aoiid +GROUP BY pf.aoiid, pf.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, flodfreq, pondfreq, major_mu_pct_sum, mu_pct_sum +; + +CREATE TABLE #pf2 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +cname CHAR(60), +copct INT, +major_MU_pct_sum INT, +MU_pct_sum INT, +adj_comp_pct FLOAT, +co_acres FLOAT ) +; + +INSERT INTO #pf2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, major_MU_pct_sum, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 2) AS co_acres +FROM #pf1 +; + + +--Begin Water table +CREATE TABLE #wet +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +soimoistdept_l INT, +soimoistdept_r INT, +soimoiststat CHAR(7), +MIN_soimoistdept_l INT, +MIN_soimoistdept_r INT, +major_MU_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #wet +SELECT +aoiid, +landunit, +M44.mukey, +mapunit_acres, +M44.cokey AS cokey, +M44.compname AS cname, +M44.comppct_r AS copct , +M44.majcompflag AS majcompflag, +soimoistdept_l, +soimoistdept_r, +soimoiststat, +MIN (soimoistdept_l) OVER(PARTITION BY M44.cokey) AS MIN_soimoistdept_l, +MIN (soimoistdept_r) OVER(PARTITION BY M44.cokey) AS MIN_soimoistdept_r, +major_MU_pct_sum, mu_pct_sum +FROM (#M4 AS M44 INNER JOIN (comonth AS CM INNER JOIN cosoilmoist AS COSM ON COSM.comonthkey = CM.comonthkey AND soimoiststat = 'Wet' AND CASE WHEN soimoistdept_l < 46 THEN 1 WHEN soimoistdept_r < 46 THEN 1 ELSE 2 END = 1 +) ON M44.cokey = CM.cokey AND M44.majcompflag = 'yes' +INNER JOIN component ON M44.cokey = component.cokey +AND (CASE WHEN soimoistdept_l IS NULL THEN soimoistdept_r ELSE soimoistdept_l END) = (SELECT MIN (CASE WHEN soimoistdept_l IS NULL THEN soimoistdept_r ELSE soimoistdept_l END) +FROM comonth AS CM2 +INNER JOIN cosoilmoist AS COSM2 ON COSM2.comonthkey = CM2.comonthkey AND soimoiststat = 'Wet' AND CASE WHEN soimoistdept_l < 46 THEN 1 WHEN soimoistdept_r < 46 THEN 1 ELSE 2 END = 1 AND CM2.cokey=M44.cokey +)) +WHERE CASE +WHEN (taxorder = 'gelisols' AND taxtempcl IN ('hypergelic', 'pergelic', 'subgelic') AND CM.month IN ('jul', 'aug')) THEN 1 +WHEN (taxtempregime IN ('cryic', 'pergelic', 'isofrigid') AND CM.month IN ('jul', 'aug')) THEN 1 +WHEN (taxtempregime IN ('frigid') AND CM.month IN ('may', 'jun', 'jul', 'aug', 'sep')) THEN 1 +WHEN (taxtempregime IN ('mesic') AND CM.month IN ( 'apr','may', 'jun', 'jul', 'aug', 'sep', 'oct')) THEN 1 +WHEN (taxtempregime IN ('thermic', 'hyperthermic') and CM.month IN ('mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct'))THEN 1 +WHEN (taxtempregime IN ('isothermic', 'isohyperthermic', 'isomesic') AND CM.month IN ('feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov')) THEN 1 +WHEN (CM.month IN ('jun', 'jul')) THEN 1 +ELSE 2 END = 1 +; + +CREATE TABLE #wet1 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +MIN_soimoistdept_l INT, +MIN_soimoistdept_r INT, +major_MU_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT ) +; + +INSERT INTO #wet1 +SELECT DISTINCT #AoiAcres.aoiid, #AoiAcres.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, MIN_soimoistdept_l, MIN_soimoistdept_r, major_mu_pct_sum, mu_pct_sum, (1.0 * copct / major_mu_pct_sum) AS adj_comp_pct +FROM #AoiAcres +LEFT OUTER JOIN #wet AS wet ON wet.aoiid = #AoiAcres.aoiid +GROUP BY #AoiAcres.aoiid, #AoiAcres.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, MIN_soimoistdept_r, MIN_soimoistdept_l, major_mu_pct_sum, mu_pct_sum +; + +CREATE TABLE #wet2 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +cname CHAR(60), +copct INT, +major_MU_pct_sum INT, +MU_pct_sum INT, +adj_comp_pct FLOAT, +co_acres FLOAT ) +; + +INSERT INTO #wet2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, major_MU_pct_sum, +MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #wet1 +; + +-- Hydric Soil Interp begins here +--INSERT INTO #Hydric_A (mukey, cokey, hydric_pct) +-- SELECT DISTINCT M4.mukey, M4.cokey, M4.comppct_r AS hydric_pct +-- FROM #M4 M4 +-- LEFT OUTER JOIN component C ON M4.cokey = C.cokey +-- WHERE C.hydricrating = 'Yes' +--; + +-- Populate #Hydric_B with mapunit-level hydric percent ratings +--INSERT INTO #Hydric_B (mukey, hydric_pct) +-- SELECT mukey, SUM(hydric_pct) AS hydric_pct +-- FROM #Hydric_A H1 +-- GROUP BY mukey +-- ORDER BY mukey +--; + +-- Hydric Soil Interp +INSERT INTO #Hydric1 (mukey, comp_count, count_maj_comp, all_hydric, all_not_hydric, maj_hydric, maj_not_hydric, hydric_inclusions, hydric_null) +SELECT DISTINCT M4.mukey, +(SELECT TOP 1 COUNT(*) +FROM mapunit +INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey) AS comp_count, +(SELECT TOP 1 COUNT(*) +FROM mapunit +INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes') AS count_maj_comp, +(SELECT TOP 1 COUNT(*) +FROM mapunit +INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating = 'Yes' ) AS all_hydric, +(SELECT TOP 1 COUNT(*) +FROM mapunit +INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating != 'Yes') AS all_not_hydric, +(SELECT TOP 1 COUNT(*) +FROM mapunit +INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes' AND hydricrating = 'Yes') AS maj_hydric, +(SELECT TOP 1 COUNT(*) +FROM mapunit +INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes' AND hydricrating != 'Yes') AS maj_not_hydric, +(SELECT TOP 1 COUNT(*) +FROM mapunit +INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag != 'Yes' AND hydricrating = 'Yes' ) AS hydric_inclusions, +(SELECT TOP 1 COUNT(*) +FROM mapunit +INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating IS NULL ) AS hydric_null +FROM #M4 AS M4 +; + +-- Takes hydric count statistics and converts them to interpretation-type rating classes (hydric_rating) +INSERT INTO #Hydric2 (mukey, hydric_rating, low_pct, rv_pct, high_pct) +SELECT +mukey, +CASE WHEN comp_count = all_not_hydric + hydric_null THEN 'Nonhydric' +WHEN comp_count = all_hydric THEN 'Hydric' +WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 'Predominantly hydric' +WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 'Predominantly nonhydric' +WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 'Partially hydric' +ELSE 'Error' +END AS hydric_rating, + +CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' +WHEN comp_count = all_hydric THEN 1 --'Hydric' +WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.80 --'Predominantly hydric' +WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.01 --'Predominantly nonhydric' +WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.15 --'Partially hydric' +ELSE 0.00 --'Error' +END AS low_pct, + +CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' +WHEN comp_count = all_hydric THEN 1 --'Hydric' +WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.85 --'Predominantly hydric' +WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.05 --'Predominantly nonhydric' +WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.50 --'Partially hydric' +ELSE 0.00 --'Error' +END AS rv_pct, + +CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' +WHEN comp_count = all_hydric THEN 1 --'Hydric' +WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.99 --'Predominantly hydric' +WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.20 --'Predominantly nonhydric' +WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.79 --'Partially hydric' +ELSE 0.00 --'Error' +END AS high_pct +FROM #Hydric1 +; + +INSERT INTO #Hydric3 ( aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres) +SELECT DISTINCT aoiid, +landunit, +'Hydric Soils' AS attributename, +ROUND (SUM (mapunit_acres ) OVER(PARTITION BY aoiid), 2) AS aoi_acres, +H3.mukey, +CASE WHEN hydric_rating = 'Nonhydric' THEN 0 ELSE 1 END AS hydric_flag, +mapunit_acres * low_pct AS low_acres, +mapunit_acres * rv_pct AS rv_acres , +mapunit_acres * high_pct AS high_acres +FROM #Hydric2 AS H3 +INNER JOIN #M2 AS MH2 ON MH2.mukey = H3.mukey +GROUP BY aoiid, landunit, H3.mukey, mapunit_acres, hydric_rating, low_pct, rv_pct, high_pct +; + +--Easements +INSERT INTO #easHydric3 ( aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres, lowpct, rvpct, highpct ) +SELECT aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres, +CASE WHEN low_acres = 0 THEN 0 WHEN low_acres IS NULL THEN NULL ELSE ROUND (low_acres/aoi_acres,2) END AS lowpct, +CASE WHEN rv_acres = 0 THEN 0 WHEN rv_acres IS NULL THEN NULL ELSE ROUND (rv_acres/aoi_acres,2) END AS rvpct, +CASE WHEN high_acres = 0 THEN 0 WHEN high_acres IS NULL THEN NULL ELSE ROUND (high_acres/aoi_acres,2) END AS highpct +FROM #Hydric3 + + +-- ************************************************************************************************ +-- END OF QUERIES FOR SOIL PROPERTIES... + + +-- Begin query for soil interpretation: Surface Salt Concentration +-- ************************************************************************************************ + +SELECT @attributeName = 'Surface Salt Concentration'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL +IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) +ELSE +IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) +ELSE +IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) +ELSE +IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) +ELSE +IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) +ELSE +IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) +SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, +rolling_pct = SUM(rating_pct) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +), +rolling_acres = SUM(rating_acres) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +) +FROM #LandunitRatingsDetailed1 +WHERE attributename = @attributeName +ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Surface Salt Concentration +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Soil Susceptibility to Compaction +-- ************************************************************************************************ + +SELECT @attributeName = 'Soil Susceptibility to Compaction'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL +IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) +ELSE +IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) +ELSE +IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) +ELSE +IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) +ELSE +IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) +ELSE +IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) +SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, +rolling_pct = SUM(rating_pct) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +), +rolling_acres = SUM(rating_acres) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +) +FROM #LandunitRatingsDetailed1 +WHERE attributename = @attributeName +ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Soil Susceptibility to Compaction +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Organic Matter Depletion +-- ************************************************************************************************ + +SELECT @attributeName = 'Organic Matter Depletion'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL +IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) +ELSE +IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) +ELSE +IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) +ELSE +IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) +ELSE +IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) +ELSE +IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) +SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, +rolling_pct = SUM(rating_pct) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +), +rolling_acres = SUM(rating_acres) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +) +FROM #LandunitRatingsDetailed1 +WHERE attributename = @attributeName +ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Organic Matter Depletion +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Agricultural Organic Soil Subsidence +-- ************************************************************************************************ + +SELECT @attributeName = 'Agricultural Organic Soil Subsidence'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL +IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) +ELSE +IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) +ELSE +IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) +ELSE +IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) +ELSE +IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) +ELSE +IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) +SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, +rolling_pct = SUM(rating_pct) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +), +rolling_acres = SUM(rating_acres) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +) +FROM #LandunitRatingsDetailed1 +WHERE attributename = @attributeName +ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Agricultural Organic Soil Subsidence +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Limitations for Aerobic Soil Organisms +-- ************************************************************************************************ + +SELECT @attributeName = 'Limitations for Aerobic Soil Organisms'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL +IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) +ELSE +IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) +ELSE +IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) +ELSE +IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) +ELSE +IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) +ELSE +IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) +SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, +rolling_pct = SUM(rating_pct) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +), +rolling_acres = SUM(rating_acres) OVER +( +PARTITION BY landunit +ORDER BY rating_key ROWS UNBOUNDED PRECEDING +) +FROM #LandunitRatingsDetailed1 +WHERE attributename = @attributeName +ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Limitations for Aerobic Soil Organisms +-- ************************************************************************************************ + +-- Begin saving the final CART soil interpretation ratings for each landunit. The record for the overall landunit rating will have an id = 1. +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres, soils_metadata) +SELECT LC.landunit, LC.attributename, LC.rating_class, LC.rating_key, LC.rating_value, rolling_pct, rolling_acres, landunit_acres, MD.soils_metadata +FROM #LandunitRatingsCART LC +INNER JOIN #RatingDomain RD ON LC.attributename = RD.attributename AND LC.rating_class = RD.rating_class +INNER JOIN #LandunitMetadata MD ON LC.landunit = MD.landunit +WHERE LC.id = 1 +ORDER BY landunit, rating_key +; + +-- Ponding and Flooding CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT #pf2.landunit, 'Ponding or Flooding' AS rating_name, +CASE WHEN SUM (co_acres) IS NULL THEN 2 +WHEN SUM (co_acres) > 0 THEN 1 +WHEN SUM (co_acres) = 0 THEN 0 +ELSE -1 +END AS rating_value, +CASE WHEN SUM (co_acres) IS NULL THEN 'Not rated' +WHEN SUM (co_acres) > 0 THEN 'Yes' +WHEN SUM (co_acres) = 0 THEN 'No' +ELSE 'Error' +END AS rating_class +FROM #pf2 +GROUP BY #pf2.landunit +ORDER BY #pf2.landunit +; + +-- Water Table CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Water Table' AS attribute_name, +CASE WHEN SUM (co_acres) IS NULL THEN 2 +WHEN SUM (co_acres) > 0 THEN 1 +WHEN SUM (co_acres) = 0 THEN 0 +ELSE -1 +END AS rating_value, +CASE WHEN SUM (co_acres) IS NULL THEN 'Not rated' +WHEN SUM (co_acres) > 0 THEN 'Yes' +WHEN SUM (co_acres) = 0 THEN 'No' +ELSE 'Error' +END AS rating_class +FROM #wet2 +GROUP BY landunit +ORDER BY landunit +; + +-- Hydric Soils CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, attributename, +CASE WHEN SUM(rv_acres) IS NULL THEN 2 +WHEN SUM(rv_acres) > 0 THEN 1 +WHEN SUM(rv_acres) = 0 THEN 0 +END AS rating_key, +CASE WHEN SUM(rv_acres) IS NULL THEN 'Not rated' +WHEN SUM(rv_acres) > 0 THEN 'Yes' +WHEN SUM(rv_acres) = 0 THEN 'No' +END AS rating_class +FROM #Hydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; + + +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Organic and Hydric Soils' AS attributename, +CASE WHEN SUM(rv_acres) IS NULL THEN 2 +WHEN SUM(rv_acres) > 0 THEN 1 +WHEN SUM(rv_acres) = 0 THEN 0 +END AS rating_key, +CASE WHEN SUM(rv_acres) IS NULL THEN 'Not rated' +WHEN SUM(rv_acres) > 0 THEN 'Yes' +WHEN SUM(rv_acres) = 0 THEN 'No' +END AS rating_class +FROM #Hydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; +--Easments Hydric 50 Percent + +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Easements Hydric Soils' attributename, +CASE WHEN SUM(rvpct) IS NULL THEN 2 +WHEN SUM(rvpct) >= .50 THEN 1 +WHEN SUM(rvpct) < .50 THEN 0 +END AS rating_key, +CASE WHEN SUM(rvpct) IS NULL THEN 'Not rated' +WHEN SUM(rvpct) >= .50 THEN 'Yes' +WHEN SUM(rvpct) < .50 THEN 'No' +END AS rating_class +FROM #easHydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; + + + +-- SOC CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Soil Organic Carbon Stock' AS attributename, +CASE WHEN SOCSTOCK_0_30_Weighted_Average = 0 THEN 1 +WHEN SOCSTOCK_0_30_Weighted_Average > 0 AND SOCSTOCK_0_30_Weighted_Average < 10 THEN 2 +WHEN SOCSTOCK_0_30_Weighted_Average >= 10 AND SOCSTOCK_0_30_Weighted_Average < 25 THEN 3 +WHEN SOCSTOCK_0_30_Weighted_Average >= 25 AND SOCSTOCK_0_30_Weighted_Average < 50 THEN 4 +WHEN SOCSTOCK_0_30_Weighted_Average >= 50 AND SOCSTOCK_0_30_Weighted_Average < 100 THEN 5 +WHEN SOCSTOCK_0_30_Weighted_Average >= 100 THEN 6 +WHEN SOCSTOCK_0_30_Weighted_Average IS NULL THEN 7 +END AS rating_value, +CASE WHEN SOCSTOCK_0_30_Weighted_Average = 0 THEN 'None' +WHEN SOCSTOCK_0_30_Weighted_Average >0 AND SOCSTOCK_0_30_Weighted_Average < 10 THEN 'Very low' +WHEN SOCSTOCK_0_30_Weighted_Average >=10 AND SOCSTOCK_0_30_Weighted_Average < 25 THEN 'Low' +WHEN SOCSTOCK_0_30_Weighted_Average >=25 AND SOCSTOCK_0_30_Weighted_Average < 50 THEN 'Moderate' +WHEN SOCSTOCK_0_30_Weighted_Average >=50 AND SOCSTOCK_0_30_Weighted_Average < 100 THEN 'Moderately High' +WHEN SOCSTOCK_0_30_Weighted_Average >=100 THEN 'High' +WHEN SOCSTOCK_0_30_Weighted_Average IS NULL THEN 'Not rated' +END AS rating_class +FROM #SOC6 +; + +-- Aggregate Stability CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #agg8.landunit, 'Aggregate Stability' AS attributename, +CASE WHEN LU_AGG_Weighted_Average_R <25 THEN 1 +WHEN LU_AGG_Weighted_Average_R >=25 AND LU_AGG_Weighted_Average_R <50 THEN 2 +WHEN LU_AGG_Weighted_Average_R >=50 AND LU_AGG_Weighted_Average_R <75 THEN 3 +WHEN LU_AGG_Weighted_Average_R >=75 THEN 4 +WHEN LU_AGG_Weighted_Average_R IS NULL THEN 5 +END AS rating_value, +CASE WHEN LU_AGG_Weighted_Average_R <25 THEN 'Low' +WHEN LU_AGG_Weighted_Average_R >=25 AND LU_AGG_Weighted_Average_R <50 THEN 'Moderate' +WHEN LU_AGG_Weighted_Average_R >=50 AND LU_AGG_Weighted_Average_R <75 THEN 'Moderately High' +WHEN LU_AGG_Weighted_Average_R >=75 THEN 'High' +WHEN LU_AGG_Weighted_Average_R IS NULL THEN 'Not Rated' +END AS rating_class +FROM #agg8 +; + +-- AWS CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Available Water Storage' AS attributename, +CASE WHEN AWS_Weighted_Average0_150 IS NULL THEN 2 +WHEN AWS_Weighted_Average0_150 > 0 THEN 1 +WHEN AWS_Weighted_Average0_150 = 0 THEN 0 +END AS rating_value, +CASE WHEN AWS_Weighted_Average0_150 IS NULL THEN 'Not rated' +WHEN AWS_Weighted_Average0_150 > 0 THEN 'Yes' +WHEN AWS_Weighted_Average0_150 = 0 THEN 'No' +END AS rating_class +FROM #aws1 +; + + +--Air Quality +CREATE TABLE #LandunitRatingsAirQualityData ( +landunit CHAR(20), +rating_name_CS CHAR(60), +rating_value_CS INT, +rating_class_CS CHAR(60), +rating_name_OMD CHAR(60), +rating_value_OMD INT, +rating_class_OMD CHAR(60), +rating_name_HYD CHAR(60), +rating_value_HYD INT, +rating_class_HYD CHAR(60), +) + + +INSERT INTO #LandunitRatingsAirQualityData +( +landunit, +rating_name_CS, +rating_value_CS, +rating_class_CS, +rating_name_OMD, +rating_value_OMD, +rating_class_OMD, +rating_name_HYD, +rating_value_HYD, +rating_class_HYD +) +SELECT LRC.landunit, LRC.attributename AS rating_name, LRC.rating_value, LRC.rating_class, +LRC2.attributename AS rating_name2, LRC2.rating_value AS rating_value2, LRC2.rating_class AS rating_class2, +LRC3.attributename AS rating_name3, LRC3.rating_value AS rating_value3, LRC3.rating_class AS rating_class3 +FROM #LandunitRatingsCART2 LRC +INNER JOIN #AoiAcres AS a ON a.landunit = LRC.landunit AND LRC.attributename = 'Soil Organic Carbon Stock' +INNER JOIN #LandunitRatingsCART2 LRC2 ON LRC.landunit = LRC2.landunit AND LRC2.attributename ='Organic Matter Depletion' +INNER JOIN #LandunitRatingsCART2 LRC3 ON LRC.landunit = LRC3.landunit AND LRC3.attributename ='Easements Hydric Soils' + +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Air Quality' AS rating_name, +------------ +------------ class 1 +CASE WHEN (rating_value_CS = 2 AND rating_value_OMD = 5 AND rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 1 +------------ +WHEN (rating_value_CS = 3 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 1 +------------ +WHEN (rating_value_CS = 4 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +------------ +WHEN (rating_value_CS = 5 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +------------ +------------ class 2 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +----------- +WHEN (rating_value_CS = 3 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +----------- +WHEN (rating_value_CS = 4 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +----------- +WHEN (rating_value_CS = 5 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +----------- +WHEN (rating_value_CS = 6 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +------------ class 3 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 3 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 3 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 3 +---------- +---------- make class = 3 when hydric +WHEN (rating_value_HYD = 1) +THEN 3 +---------- +---------- else make nNOT rated +ELSE 4 +END AS rating_value, + +CASE WHEN (rating_value_CS = 2 AND rating_value_OMD = 5 AND rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 2 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 2 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 2 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +------------ +WHEN (rating_value_CS = 3 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 3 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 3 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +------------ +WHEN (rating_value_CS = 4 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 4 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +------------ +WHEN (rating_value_CS = 5 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +------------ +------------ class 2 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +----------- +WHEN (rating_value_CS = 3 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 3 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +----------- +WHEN (rating_value_CS = 4 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 4 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 4 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +----------- +WHEN (rating_value_CS = 5 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 5 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 5 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +----------- +WHEN (rating_value_CS = 6 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 6 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 6 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +------------ class 3 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 3' +WHEN (rating_value_CS = 6 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class 3' +WHEN (rating_value_CS = 6 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 3' +---------- +---------- make class = 3 when hydric +WHEN (rating_value_HYD = 1) +THEN 'Class 3' +---------- +---------- else make nNOT rated +ELSE 'Class 4' +END AS rating_class +FROM #LandunitRatingsAirQualityData + + +-- For ArcMap LandUnit Rating table, also return rating_class. +---SELECT LRC.landunit, LRC.attributename AS rating_name, LRC.rating_value, LRC.rating_class +---FROM #LandunitRatingsCART2 LRC +---INNER JOIN #AoiAcres AS a ON a.landunit = LRC.landunit +---ORDER BY LRC.landunit, LRC.attributename +---; + +SELECT attributename As rating_name, rating_value AS rating_value +FROM #LandunitRatingsCART2 +ORDER BY attributename; \ No newline at end of file diff --git a/SQL-Library/CART_SoilsQuery_kitchensink_20210927SDA_EDT.sql b/SQL-Library/CART_SoilsQuery_kitchensink_20210927SDA_EDT.sql new file mode 100644 index 0000000..a8b62fb --- /dev/null +++ b/SQL-Library/CART_SoilsQuery_kitchensink_20210927SDA_EDT.sql @@ -0,0 +1,2755 @@ +-- 2021-09-23 EDIT T16:13:41 + +/** SDA Query application="CART" rule="Generalized Resource Assessment - September 2021" version="FY22" **/ +-- Fixed 'Farm Land Class' query - return 0 instead on 'not rated' ; Susan McGlasson ; 05/31/2023 +-- Updated Soil Organic Carbon Stock Domain and added Hydric Easements to Air Quality 09/27/2021 +-- Includes Limitations for Aerobic Soil Organisms 8/2021 +-- Includes Air Quality 09/23/2021 +-- BEGIN CREATING AOI QUERY + + + + +-- Declare all variables here +~DeclareChar(@attributeName,60)~ +~DeclareChar(@ruleDesign,60)~ +~DeclareChar(@ruleKey,30)~ +~DeclareChar(@rating1,60)~ +~DeclareChar(@rating2,60)~ +~DeclareChar(@rating3,60)~ +~DeclareChar(@rating4,60)~ +~DeclareChar(@rating5,60)~ +~DeclareChar(@rating6,60)~ +~DeclareVarchar(@dateStamp,20)~ +~DeclareInt(@minAcres)~ +~DeclareInt(@minPct)~ +~DeclareGeometry(@aoiGeom)~ +~DeclareGeometry(@aoiGeomFixed)~ +~DeclareChar(@ratingKey,70)~ +~DeclareChar(@notRatedPhrase,15)~ +~DeclareInt(@Level)~ + +-- Create AOI table with polygon geometry. Coordinate system must be WGS1984 (EPSG 4326) +CREATE TABLE #AoiTable + ( aoiid INT IDENTITY (1,1), + landunit CHAR(20), + aoigeom GEOMETRY ) +; + +-- Insert identifier string and WKT geometry for each AOI polygon after this... +SELECT @aoiGeom = GEOMETRY::STGeomFromText('MULTIPOLYGON (((-102.1334674808154 45.944646056283148, -102.1305452386178 45.944662550781629, -102.1250676378794 45.944693468635933, -102.12327175652177 45.944703605814198, -102.12327765248887 45.945772183298914, -102.12330205474188 45.950193894213385, -102.1233054191124 45.950803657359927, -102.12331516688346 45.952569931178118, -102.1233221258513 45.953831080876398, -102.12333600511613 45.956345988730334, -102.1233516074854 45.959173207471792, -102.12459804964163 45.959178487402028, -102.12670803513845 45.959187427580332, -102.13299778465881 45.959214074545628, -102.13341500616872 45.959215842616345, -102.13402890980223 45.959218443460884, -102.13402774158055 45.959111884377819, -102.13401199262148 45.957674528361167, -102.13400912287909 45.957412604789681, -102.13398283564328 45.955013506463786, -102.13397232704421 45.954054476515239, -102.13393392411768 45.950549610965993, -102.13391513994065 45.948835142697533, -102.13390800470529 45.948184012453055, -102.13389569296197 45.947060215585338, -102.13386963505371 45.944681989666435, -102.13386921596879 45.944643788188387, -102.1334674808154 45.944646056283148)))', 4326); +SELECT @aoiGeomFixed = @aoiGeom.MakeValid().STUnion(@aoiGeom.STStartPoint()); +INSERT INTO #AoiTable ( landunit, aoigeom ) +VALUES ('T9981 Fld3', @aoiGeomFixed); +SELECT @aoiGeom = GEOMETRY::STGeomFromText('MULTIPOLYGON (((-102.12136920366567 45.944704870263536, -102.11670730943416 45.944707968434159, -102.1128892282776 45.944710505426713, -102.11289951024708 45.945739429924686, -102.11291126351028 45.946915639385679, -102.11291860469078 45.947650380666801, -102.11295289231145 45.951081605982836, -102.11297119355163 45.952912994444262, -102.11302630231779 45.95842807180577, -102.11303364349828 45.959162795100383, -102.11314107672411 45.959162904817845, -102.1217964112675 45.959171637252325, -102.12300556925601 45.959172857634769, -102.1233516074854 45.959173207471792, -102.12333600511613 45.956345988730334, -102.1233221258513 45.953831080876398, -102.12331516688346 45.952569931178118, -102.1233054191124 45.950803657359927, -102.12330205474188 45.950193894213385, -102.12327765248887 45.945772183298914, -102.12327175652177 45.944703605814198, -102.12136920366567 45.944704870263536)))', 4326); +SELECT @aoiGeomFixed = @aoiGeom.MakeValid().STUnion(@aoiGeom.STStartPoint()); +INSERT INTO #AoiTable ( landunit, aoigeom ) +VALUES ('T9981 Fld4', @aoiGeomFixed); + +-- End of AOI geometry section + +-- #AoiAcres table to contain summary acres for each landunit +CREATE TABLE #AoiAcres + ( aoiid INT, + landunit CHAR(20), + landunit_acres FLOAT ) +; + +-- #LandunitRatingsDetailed1 table +CREATE TABLE #LandunitRatingsDetailed1 + ( aoiid INT, + landunit CHAR(20), + attributename CHAR(60), + rating_class CHAR(60), + rating_value INT, + rating_key CHAR(60), + rating_pct FLOAT, + rating_acres FLOAT, + landunit_acres FLOAT ) +; + +-- #LandunitRatingsDetailed2 table +CREATE TABLE #LandunitRatingsDetailed2 + (landunit CHAR(20), + attributename CHAR(60), + rating_class CHAR(60), + rating_value INT, + rating_key CHAR(60), + rating_pct FLOAT, + rating_acres FLOAT, + landunit_acres FLOAT, + rolling_pct FLOAT, + rolling_acres FLOAT ) +; + +-- #LandunitRatingsCART table +CREATE TABLE #LandunitRatingsCART + (id INT, + landunit CHAR(20), + attributename CHAR(60), + rating_class CHAR(60), + rating_value INT, + rating_key CHAR(60), + rolling_pct FLOAT, + rolling_acres FLOAT, + landunit_acres FLOAT ) +; + +-- #LandunitRatingsCART2 table +-- This table will only contain the final, overall ratings for CART +CREATE TABLE #LandunitRatingsCART2 + (id INT IDENTITY (1,1), + landunit CHAR(20), + attributename CHAR(60), + rating_class CHAR(60), + rating_key CHAR(60), + rating_value INT, -- Need to change to rating_value + rolling_pct FLOAT, + rolling_acres FLOAT, + landunit_acres FLOAT, + soils_metadata VARCHAR(150) ) +; + +-- #AoiSoils table contains intersected soil polygon table with geometry +CREATE TABLE #AoiSoils + ( polyid INT IDENTITY (1,1), + aoiid INT, + landunit CHAR(20), + mukey INT, + soilgeom GEOMETRY ) +; + +-- #AoiSoils2 table contains Soil geometry with landunits +CREATE TABLE #AoiSoils2 + ( aoiid INT, + polyid INT, + landunit CHAR(20), + mukey INT, + poly_acres FLOAT, + soilgeog GEOGRAPHY ) +; + +-- #M2 table contains Soil map unit acres, aggregated by mukey (merges polygons together) +CREATE TABLE #M2 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT ) +; + +-- #FC table contains Soil map unit acres, aggregated by mukey Farm Class +CREATE TABLE #FC + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + farmlndclass CHAR(30), + farmlndclassvalue INT, + landunit_acres FLOAT ) +; + + +CREATE TABLE #FC2 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + farmlndclass CHAR(30), + farmlndclassvalue INT, + landunit_acres FLOAT, + farmac_pct REAL, + farm_ac_sum REAL, + farmac_sum_pct INT + ) +; + + +-- #M4 table contains Component level data with cokey, comppct_r and mapunit sum-of-comppct_r (major components only) +CREATE TABLE #M4 +( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + cokey INT, + compname CHAR(60), + comppct_r INT, + majcompflag CHAR(3), + mu_pct_sum INT, + major_mu_pct_sum INT, + drainagecl CHAR(254) + ); + +-- #M5 table contains Component level ratings for the currently selected soil interpretation +CREATE TABLE #M5 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + cokey INT, + compname CHAR(60), + comppct_r INT, + rating_class CHAR(60), + mu_pct_sum INT ) +; + +-- #M6 table contains Component level ratings with adjusted component percent to account for missing minor components +CREATE TABLE #M6 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + cokey INT, + compname CHAR(60), + comppct_r INT, + rating_class CHAR(60), + mu_pct_sum INT, + adj_comp_pct FLOAT ) +; + +-- #M8 table contains Component acres by multiplying map unit acres with adjusted component percent +CREATE TABLE #M8 + ( aoiid INT, + landunit CHAR(20), + mukey INT, + mapunit_acres FLOAT, + cokey INT, + compname CHAR(60), + comppct_r INT, + rating_class CHAR(60), + MU_pct_sum INT, + adj_comp_pct FLOAT, + co_acres FLOAT ) +; + +-- #M10 table contains Aggregated rating class values and sum of component acres by landunit (Tract and Field number) +CREATE TABLE #M10 + ( landunit CHAR(20), + rating_class CHAR(60), + rating_acres FLOAT ) +; + +-- Hydric table contains soils at the Map Unit, using all map units from table #M2. +CREATE TABLE #Hydric1 + (mukey INT, + comp_count INT, -- cnt_comp + count_maj_comp INT, -- cnt_mjr + all_hydric INT, -- cnt_hydric + all_not_hydric INT, -- cnt_nonhydric + maj_hydric INT, -- cnt_mjr_hydric + maj_not_hydric INT, -- cnt_mjr_nonhydric + hydric_inclusions INT, -- cnt_minor_hydric + hydric_null INT ) -- cnt_null_hydric +; + +-- #Hydric2 table contains the Low, Rv, and High range for Hydric +CREATE TABLE #Hydric2 + (mukey INT, + hydric_rating CHAR (25), + low_pct FLOAT, + rv_pct FLOAT, + high_pct FLOAT ) +; + +-- #Hydric3 table contains hydric rating acres +CREATE TABLE #Hydric3 + (aoiid INT, + landunit CHAR(20), + attributename CHAR(60), + AOI_Acres FLOAT, + rating_class CHAR(60), + rating_key CHAR(60), + mukey INT, + hydric_flag INT, + low_acres FLOAT, + rv_acres FLOAT, + high_acres FLOAT ) +; + +-- #Easments Hydric3 table contains hydric rating acres +CREATE TABLE #easHydric3 + (aoiid INT, + landunit CHAR(20), + attributename CHAR(60), + AOI_Acres FLOAT, + rating_class CHAR(60), + rating_key CHAR(60), + mukey INT, + hydric_flag INT, + low_acres FLOAT, + rv_acres FLOAT, + high_acres FLOAT, + lowpct REAL , rvpct REAL, highpct REAL ) +; + + +-- Identify all hydric components by map unit, using table #M4. +--CREATE TABLE #Hydric_A + -- (mukey INT, + -- cokey INT, + -- hydric_pct INT ) +--; + +-- Hydric soils at the mapunit level, using all components where hydricrating = 'Yes'. +--CREATE TABLE #Hydric_B + -- (mukey INT, + -- hydric_pct INT ) +--; + +-- #SDV table contains rule settings from sdvattribute table +CREATE TABLE #SDV + (attributekey BIGINT, + attributename CHAR(60), + attributetablename CHAR(30), + attributecolumnname CHAR(30), + attributelogicaldatatype CHAR(20), + attributefieldsize SMALLINT, + attributeprecision TINYINT, + attributedescription NVARCHAR(MAX), + attributeuom NVARCHAR(60), + attributeuomabbrev NVARCHAR(30), + attributetype CHAR(20), + nasisrulename CHAR(60), + ruledesign NVARCHAR(60), + notratedphrase CHAR(15), + mapunitlevelattribflag TINYINT, + complevelattribflag TINYINT, + cmonthlevelattribflag TINYINT, + horzlevelattribflag TINYINT, + tiebreakdomainname CHAR(40), + tiebreakruleoptionflag TINYINT, + tiebreaklowlabel CHAR(20), + tiebreakhighlabel CHAR(20), + tiebreakrule SMALLINT, + resultcolumnname CHAR(10), + sqlwhereclause CHAR(255), + primaryconcolname CHAR(30), + pcclogicaldatatype CHAR(20), + primaryconstraintlabel CHAR(30), + secondaryconcolname CHAR(30), + scclogicaldatatype CHAR(20), + secondaryconstraintlabel CHAR(30), + dqmodeoptionflag TINYINT, + depthqualifiermode CHAR(20), + layerdepthtotop FLOAT, + layerdepthtobottom FLOAT, + layerdepthuom CHAR(20), + monthrangeoptionflag TINYINT, + beginningmonth CHAR(9), + endingmonth CHAR(9), + horzaggmeth CHAR(30), + interpnullsaszerooptionflag TINYINT, + interpnullsaszeroflag TINYINT, + nullratingreplacementvalue CHAR(254), + basicmodeflag TINYINT, + maplegendkey SMALLINT, + maplegendclasses TINYINT, + maplegendxml XML, + nasissiteid BIGINT, + wlupdated DATETIME, + algorithmname CHAR(50), + componentpercentcutoff TINYINT, + readytodistribute TINYINT, + effectivelogicaldatatype CHAR(20), + rulekey CHAR(30) ) +; + +-- #RatingClasses table contains the first six rating classes for each interp +CREATE TABLE #RatingClasses + (attributename CHAR(60), + ruledesign CHAR(60), + rating1 CHAR(60), + rating2 CHAR(60), + rating3 CHAR(60), + rating4 CHAR(60), + rating5 CHAR(60), + rating6 CHAR(60) ) +; + +-- #RatingDomain table containing the domain values for each CART rating for each interp +CREATE TABLE #RatingDomain + (id INT IDENTITY (1,1), + rating_key CHAR(60), + attributename CHAR(60), + rating_class CHAR(60), + rating_value INT ) +; + +-- #DateStamps table to store survey area datestamps (sacatalog.saverest) +CREATE TABLE #DateStamps + (landunit CHAR(20), + datestamp VARCHAR(32) ) +; + +-- #LandunitMetadata table to store landunit metadata (survey area and saverest) which comes from #DateStamps +CREATE TABLE #LandunitMetadata + (landunit CHAR(20), + soils_metadata VARCHAR(150) ) +; + +-- End of CREATE TABLE section + +-- Populate #SDV with interp metadata +INSERT INTO #SDV (attributename, attributecolumnname, attributelogicaldatatype, attributetype, + attributeuom, nasisrulename, rulekey, ruledesign, notratedphrase, resultcolumnname, + effectivelogicaldatatype, attributefieldsize, maplegendxml, maplegendkey, attributedescription, + sqlwhereclause, secondaryconcolname, tiebreaklowlabel, tiebreakhighlabel) + SELECT sdv.attributename, sdv.attributecolumnname, sdv.attributelogicaldatatype, sdv.attributetype, + sdv.attributeuom, sdv.nasisrulename, md.rulekey, md.ruledesign, sdv.notratedphrase, sdv.resultcolumnname, + sdv.effectivelogicaldatatype, sdv.attributefieldsize, sdv.maplegendxml, sdv.maplegendkey, sdv.attributedescription, + sdv.sqlwhereclause, sdv.secondaryconcolname,tiebreaklowlabel, tiebreakhighlabel + FROM sdvattribute sdv + LEFT OUTER JOIN distinterpmd md ON sdv.nasisrulename = md.rulename + WHERE sdv.attributename IN ('Agricultural Organic Soil Subsidence', 'Soil Susceptibility to Compaction', 'Organic Matter Depletion', 'Surface Salt Concentration', 'Limitations for Aerobic Soil Organisms', 'Hydric Rating by Map Unit') + GROUP BY md.rulekey, sdv.attributename, sdv.attributecolumnname, sdv.attributelogicaldatatype, sdv.attributetype, sdv.attributeuom, sdv.nasisrulename, sdv.resultcolumnname, sdv.effectivelogicaldatatype, + sdv.attributefieldsize, md.ruledesign, sdv.notratedphrase, sdv.maplegendxml, sdv.maplegendkey, sdv.attributedescription, sqlwhereclause, secondaryconcolname, tiebreaklowlabel, tiebreakhighlabel +; + +-- Populate #AoiAcres table +INSERT INTO #AoiAcres (aoiid, landunit, landunit_acres ) + SELECT aoiid, landunit, + SUM( ROUND( ( ( GEOGRAPHY::STGeomFromWKB(aoigeom.STAsBinary(), 4326 ).STArea() ) / 4046.8564224 ), 3 ) ) AS landunit_acres + FROM #AoiTable + GROUP BY aoiid, landunit +; + +-- Populate #AoiSoils table with intersected soil polygon geometry +INSERT INTO #AoiSoils (aoiid, landunit, mukey, soilgeom) + SELECT A.aoiid, A.landunit, M.mukey, M.mupolygongeo.STIntersection(A.aoigeom ) AS soilgeom + FROM mupolygon M, #AoiTable A + WHERE mupolygongeo.STIntersects(A.aoigeom) = 1 +; + +-- Populate #AoiSoils2 Soil geometry with landunit attribute +INSERT INTO #AoiSoils2 + SELECT aoiid, polyid, landunit, mukey, ROUND((( GEOGRAPHY::STGeomFromWKB(soilgeom.STAsBinary(), 4326 ).STArea() ) / 4046.8564224 ), 3 ) AS poly_acres, GEOGRAPHY::STGeomFromWKB(soilgeom.STAsBinary(), 4326 ) AS soilgeog + FROM #AoiSoils +; + +-- Populate #M2 soil map unit acres, aggregated by mukey (merges polygons together) +INSERT INTO #M2 + SELECT DISTINCT M1.aoiid, M1.landunit, M1.mukey, + ROUND (SUM (M1.poly_acres) OVER(PARTITION BY M1.landunit, M1.mukey), 3) AS mapunit_acres + FROM #AoiSoils2 AS M1 + GROUP BY M1.aoiid, M1.landunit, M1.mukey, M1.poly_acres +; + +-- Populate #FC table with Farm Land Class +INSERT INTO #FC + SELECT fcc.aoiid, fcc.landunit, mu.mukey, mapunit_acres, + CASE WHEN farmlndcl IS NULL THEN 'Not rated' + WHEN farmlndcl = 'All areas are prime farmland' THEN 'Prime' + WHEN farmlndcl LIKE 'Prime farmland if%' THEN 'Prime if' + WHEN farmlndcl = 'Farmland of statewide importance' THEN 'State' + WHEN farmlndcl LIKE 'Farmland of statewide importance, if%' THEN 'State if' + WHEN farmlndcl = 'Farmland of local importance' THEN 'Local' + WHEN farmlndcl LIKE 'Farmland of local importance, if%' THEN 'Local if' + WHEN farmlndcl = 'Farmland of unique importance' THEN 'Unique' + ELSE 'Not Prime' + END AS farmlndclass, + CASE WHEN farmlndcl IS NULL THEN 0 + WHEN farmlndcl = 'All areas are prime farmland' THEN 1 + WHEN farmlndcl LIKE 'Prime farmland if%' THEN 1 + WHEN farmlndcl = 'Farmland of statewide importance' THEN 1 + WHEN farmlndcl LIKE 'Farmland of statewide importance, if%' THEN 1 + WHEN farmlndcl = 'Farmland of local importance' THEN 1 + WHEN farmlndcl LIKE 'Farmland of local importance, if%' THEN 1 + WHEN farmlndcl = 'Farmland of unique importance' THEN 1 + ELSE 0 + END AS farmlndclassvalue, landunit_acres + FROM #M2 AS fcc + INNER JOIN mapunit AS mu ON mu.mukey = fcc.mukey + INNER JOIN #AoiAcres ON #AoiAcres.aoiid=fcc.aoiid +; + +INSERT INTO #FC2 +SELECT aoiid, landunit, mukey, mapunit_acres, farmlndclass, farmlndclassvalue, landunit_acres, CASE WHEN mapunit_acres = 0 THEN 0 WHEN landunit_acres = 0 THEN 0 ELSE + ROUND ((mapunit_acres / landunit_acres) * 100.0, 2) END AS farmac_pct, SUM (mapunit_acres) OVER(PARTITION BY landunit) AS farm_ac_sum, ROUND (SUM ((mapunit_acres / landunit_acres) * 100.0) OVER(PARTITION BY landunit), 0) AS farmac_sum_pct +FROM #FC +WHERE farmlndclassvalue = 1 + +-- Enviromental Assessment +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #FC2.landunit, 'Farm Class' AS attributename, +CASE WHEN farm_ac_sum > 0 THEN 1 ELSE 0 END AS rating_value, CASE WHEN farm_ac_sum > 0 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #AoiAcres +LEFT OUTER JOIN #FC2 ON #AoiAcres.aoiid=#FC2.aoiid +; + + +-- Easements +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #FC2.landunit, 'Easements Farm Class' AS attributename, +CASE WHEN farmac_sum_pct >= 50 THEN 1 ELSE 0 END AS rating_value, CASE WHEN farmac_sum_pct>= 50 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #AoiAcres +LEFT OUTER JOIN #FC2 ON #AoiAcres.aoiid=#FC2.aoiid +; + + + +-- Populate #M4 table with component level data with cokey, comppct_r and mapunit sum-of-comppct_r +INSERT INTO #M4 +SELECT M2.aoiid, M2.landunit, M2.mukey, mapunit_acres, CO.cokey, CO.compname, CO.comppct_r, CO.majcompflag, +SUM (CO.comppct_r) OVER(PARTITION BY M2.landunit, M2.mukey) AS mu_pct_sum, (SELECT SUM (CCO.comppct_r) +FROM #M2 AS MM2 +INNER JOIN component AS CCO ON CCO.mukey = MM2.mukey AND M2.mukey = MM2.mukey AND majcompflag = 'Yes' AND M2.landunit = MM2.landunit) AS major_mu_pct_sum, +drainagecl +FROM #M2 AS M2 +INNER JOIN component AS CO ON CO.mukey = M2.mukey +GROUP BY M2.aoiid, M2.landunit, M2.mukey, mapunit_acres, CO.cokey, CO.compname, CO.comppct_r, CO.majcompflag, drainagecl +; + +-- Populate #DateStamps with survey area dates for all soil mapunits involved +INSERT INTO #DateStamps + SELECT DISTINCT AM.landunit, ([SC].[areasymbol] + ' ' + CONVERT(VARCHAR(32),[SC].[saverest],120) ) AS datestamp + FROM #M4 AM + INNER JOIN mapunit Mu ON AM.mukey = Mu.mukey + INNER JOIN legend LG ON Mu.lkey = LG.lkey + INNER JOIN sacatalog SC ON Lg.areasymbol = SC.areasymbol +; + +-- Populate #LandunitMetadata table with landunit soils-metadata +-- +INSERT INTO #LandunitMetadata + SELECT DISTINCT + landunit, + STUFF((SELECT ' | ' + CAST([datestamp] AS VARCHAR(30)) + FROM #DateStamps dt2 + WHERE dt1.landunit = dt2.landunit + FOR XML PATH ('') ), 1, 2, '') AS soils_metadata + FROM #DateStamps dt1 +; + +-- END OF STATIC SECTION +-- ************************************************************************************************ + + +-- BEGIN QUERIES FOR SOIL PROPERTIES... +-- ************************************************************************************************ + +---- START DRAINAGE CLASS------------ +CREATE TABLE #drain +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(280), +comppct_r INT, +majcompflag CHAR(4), +mu_pct_sum INT, +major_mu_pct_sum INT, +drainagecl CHAR(40), +adj_comp_pct DECIMAL (6, 2) +) +; + +INSERT INTO #drain +SELECT #M4.aoiid, #M4.landunit, #AoiAcres.landunit_acres, mukey, mapunit_acres, cokey, compname, +comppct_r, majcompflag, mu_pct_sum, major_mu_pct_sum, drainagecl, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M4 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #M4.aoiid +; + +CREATE TABLE #drain2 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(280), +comppct_r INT, +majcompflag CHAR(4), +mu_pct_sum INT, +drainagecl CHAR(40), +adj_comp_pct DECIMAL (6, 2), +co_acres DECIMAL (10, 2)) +; + +-- Populate drainage class for mapunit and components +INSERT INTO #drain2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, compname, comppct_r, +majcompflag, mu_pct_sum, drainagecl, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 2) AS co_acres +FROM #drain +; + + +CREATE TABLE #drain3 +( aoiid INT , +landunit CHAR(20), +landunit_acres REAL, +sum_drain_ac REAL) +; +INSERT INTO #drain3 (aoiid, landunit, landunit_acres, sum_drain_ac ) +SELECT DISTINCT aoiid , +landunit , +landunit_acres , +SUM (CASE WHEN drainagecl = 'Poorly drained' THEN co_acres +WHEN drainagecl = 'Very poorly drained' THEN co_acres ELSE 0 END) over(partition by aoiid) as sum_drain_ac +FROM #drain2; + +CREATE TABLE #drain4 +( aoiid INT , +landunit CHAR(20), +landunit_acres REAL, +drain_pct REAL) +; +INSERT INTO #drain4 (aoiid, landunit, landunit_acres, drain_pct ) +SELECT aoiid, landunit, landunit_acres, CASE WHEN sum_drain_ac = 0 THEN 0 ELSE sum_drain_ac/landunit_acres END AS drain_pct +FROM #drain3; + + +-- Easement Drainage End +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Easements Drainage' AS attributename, +CASE WHEN drain_pct >= .50 THEN 1 ELSE 0 END AS rating_value, +CASE WHEN drain_pct >= .50 THEN 'Yes' ELSE 'No' END AS rating_class +FROM #drain4 ; + +; + +-- Begin SOC +CREATE TABLE #acpf +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +awc_r FLOAT, +restrictiondepth INT, +restrictiodepth INT, +TOPrestriction CHAR(80), +tcl CHAR(40), +thickness INT, +om_r FLOAT, +dbthirdbar_r FLOAT, +fragvol INT, +texture CHAR(40), +chkey INT, +mu_pct_sum INT) +; + +INSERT INTO #acpf +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +MA44.cokey, +MA44.compname, +MA44.comppct_r, +MA44.majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +awc_r , +(SELECT CAST(MIN(resdept_r) AS INTEGER) FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND reskind IS NOT NULL) AS restrictiondepth, +(SELECT CASE WHEN MIN (resdept_r) IS NULL THEN 200 ELSE CAST (MIN (resdept_r) AS INT) END FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND reskind IS NOT NULL) AS restrictiodepth, +(SELECT TOP 1 reskind FROM component LEFT OUTER JOIN corestrictions ON component.cokey = corestrictions.cokey WHERE component.cokey = coa.cokey AND corestrictions.reskind IN ('Lithic bedrock','Duripan', 'Densic bedrock', 'Paralithic bedrock', 'Fragipan', 'Natric', 'Ortstein', 'Permafrost', 'Petrocalcic', 'Petrogypsic') +AND reskind IS NOT NULL ORDER BY resdept_r) AS TOPrestriction, +(SELECT TOP 1 texcl FROM chtexturegrp AS chtg INNER JOIN chtexture AS cht ON chtg.chtgkey=cht.chtgkey AND chtg.rvindicator = 'yes' AND chtg.chkey=cha.chkey) AS tcl, +CASE WHEN (hzdepb_r-hzdept_r) IS NULL THEN 0 ELSE CAST((hzdepb_r - hzdept_r) AS INT) END AS thickness, +CASE WHEN texture LIKE '%PM%' AND (om_r) IS NULL THEN 35 +WHEN texture LIKE '%MUCK%' AND (om_r) IS NULL THEN 35 +WHEN texture LIKE '%PEAT%' AND (om_r) IS NULL THEN 35 ELSE om_r END AS om_r , +CASE WHEN texture LIKE '%PM%' AND (dbthirdbar_r) IS NULL THEN 0.25 +WHEN texture LIKE '%MUCK%' AND (dbthirdbar_r) IS NULL THEN 0.25 +WHEN texture LIKE '%PEAT%' AND (dbthirdbar_r) IS NULL THEN 0.25 ELSE dbthirdbar_r END AS dbthirdbar_r, +(SELECT CASE WHEN SUM (cf.fragvol_r) IS NULL THEN 0 ELSE CAST (SUM(cf.fragvol_r) AS INT) END FROM chfrags cf WHERE cf.chkey = cha.chkey) as fragvol, +texture, +cha.chkey, +mu_pct_sum +FROM (#M4 AS MA44 INNER JOIN (component AS coa INNER JOIN chorizon AS cha ON cha.cokey = coa.cokey ) ON MA44.cokey=coa.cokey AND MA44.majcompflag = 'yes' ) +LEFT OUTER JOIN chtexturegrp AS ct ON cha.chkey=ct.chkey and ct.rvindicator = 'yes' +and CASE WHEN hzdept_r IS NULL THEN 2 +WHEN texture LIKE '%PM%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%MUCK%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%PEAT%' AND om_r IS NULL THEN 1 +WHEN texture LIKE '%PM%' AND dbthirdbar_r IS NULL THEN 1 +WHEN texture LIKE '%MUCK%' AND dbthirdbar_r IS NULL THEN 1 +WHEN texture LIKE '%PEAT%' AND dbthirdbar_r IS NULL THEN 1 +WHEN om_r IS NULL THEN 2 +WHEN om_r = 0 THEN 2 +WHEN dbthirdbar_r IS NULL THEN 2 +WHEN dbthirdbar_r = 0 THEN 2 +ELSE 1 END = 1 +; + +-- Sums the Component Percent and eliminate duplicate values by cokey +SELECT landunit, aoiid, mapunit_acres , mukey, cokey, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +INTO #muacpf +FROM #acpf AS acpf2 +WHERE acpf2.cokey=cokey +GROUP BY landunit, aoiid, mapunit_acres , mukey, cokey, comppct_r, mu_pct_sum +; + +-- grab top depth for the mineral soil and will use it later to get mineral surface properties +-- Because of SOC this wasnt really needed. If any error add statement below back +SELECT compname, cokey, MIN(hzdept_r) AS min_t +INTO #hortopdepth +FROM #acpf +---WHERE texture NOT LIKE '%PM%' and texture NOT LIKE '%DOM' and texture NOT LIKE '%MPT%' AND texture NOT LIKE '%MUCK' AND texture NOT LIKE '%PEAT%' +GROUP BY cokey, compname +; + +-- Combine the mineral surface to grab surface mineral properties +SELECT #hortopdepth.cokey, +hzname, +hzdept_r, +hzdepb_r, +thickness, +texture AS texture_surf, +om_r AS om_surf, +dbthirdbar_r AS db_surf, +fragvol AS frag_surf, +chkey +INTO #acpf2 +FROM #hortopdepth +INNER JOIN #acpf on #hortopdepth.cokey=#acpf.cokey AND #hortopdepth.min_t = #acpf.hzdept_r +ORDER BY #hortopdepth.cokey, hzname +; + +SELECT +mukey, +cokey, +hzname, +restrictiodepth, +hzdept_r, +hzdepb_r, +CASE WHEN (hzdepb_r-hzdept_r) IS NULL THEN 0 ELSE CAST ((hzdepb_r - hzdept_r) AS INT) END AS thickness, +texture, +CASE WHEN dbthirdbar_r IS NULL THEN 0 ELSE dbthirdbar_r END AS dbthirdbar_r, +CASE WHEN fragvol IS NULL THEN 0 ELSE fragvol END AS fragvol, +CASE when om_r IS NULL THEN 0 ELSE om_r END AS om_r, +chkey +INTO #acpfhzn +FROM #acpf +; + +--- Depth ranges for SOC ---- +SELECT hzname, chkey, comppct_r, hzdept_r, hzdepb_r, thickness, +CASE WHEN hzdept_r < 150 then hzdept_r ELSE 0 END AS InRangeTop_0_150, +CASE WHEN hzdepb_r <= 150 THEN hzdepb_r WHEN hzdepb_r > 150 and hzdept_r < 150 THEN 150 ELSE 0 END AS InRangeBot_0_150, +CASE WHEN hzdept_r < 5 then hzdept_r ELSE 0 END AS InRangeTop_0_5, +CASE WHEN hzdepb_r <= 5 THEN hzdepb_r WHEN hzdepb_r > 5 and hzdept_r < 5 THEN 5 ELSE 0 END AS InRangeBot_0_5, +CASE WHEN hzdept_r < 30 then hzdept_r ELSE 0 END AS InRangeTop_0_30, +CASE WHEN hzdepb_r <= 30 THEN hzdepb_r WHEN hzdepb_r > 30 and hzdept_r < 30 THEN 30 ELSE 0 END AS InRangeBot_0_30, +---5 to 15 +CASE WHEN hzdepb_r < 5 THEN 0 +WHEN hzdept_r >15 THEN 0 +WHEN hzdepb_r >= 5 AND hzdept_r < 5 THEN 5 +WHEN hzdept_r < 5 THEN 0 +WHEN hzdept_r < 15 then hzdept_r ELSE 5 END AS InRangeTop_5_15 , +CASE WHEN hzdept_r > 15 THEN 0 +WHEN hzdepb_r < 5 THEN 0 +WHEN hzdepb_r <= 15 THEN hzdepb_r WHEN hzdepb_r > 15 and hzdept_r < 15 THEN 15 ELSE 5 END AS InRangeBot_5_15, +---15 to 30 +CASE WHEN hzdepb_r < 15 THEN 0 +WHEN hzdept_r >30 THEN 0 +WHEN hzdepb_r >= 15 AND hzdept_r < 15 THEN 15 +WHEN hzdept_r < 15 THEN 0 +WHEN hzdept_r < 30 then hzdept_r ELSE 15 END AS InRangeTop_15_30 , +CASE WHEN hzdept_r > 30 THEN 0 +WHEN hzdepb_r < 15 THEN 0 +WHEN hzdepb_r <= 30 THEN hzdepb_r WHEN hzdepb_r > 30 and hzdept_r < 30 THEN 30 ELSE 15 END AS InRangeBot_15_30, +--30 to 60 +CASE WHEN hzdepb_r < 30 THEN 0 +WHEN hzdept_r >60 THEN 0 +WHEN hzdepb_r >= 30 AND hzdept_r < 30 THEN 30 +WHEN hzdept_r < 30 THEN 0 +WHEN hzdept_r < 60 then hzdept_r ELSE 30 END AS InRangeTop_30_60 , +CASE WHEN hzdept_r > 60 THEN 0 +WHEN hzdepb_r < 30 THEN 0 +WHEN hzdepb_r <= 60 THEN hzdepb_r WHEN hzdepb_r > 60 and hzdept_r < 60 THEN 60 ELSE 30 END AS InRangeBot_30_60, +---60 to 100 +CASE WHEN hzdepb_r < 60 THEN 0 +WHEN hzdept_r >100 THEN 0 +WHEN hzdepb_r >= 60 AND hzdept_r < 60 THEN 60 +WHEN hzdept_r < 60 THEN 0 +WHEN hzdept_r < 100 then hzdept_r ELSE 60 END AS InRangeTop_60_100 , +CASE WHEN hzdept_r > 100 THEN 0 +WHEN hzdepb_r < 60 THEN 0 +WHEN hzdepb_r <= 100 THEN hzdepb_r WHEN hzdepb_r > 100 and hzdept_r < 100 THEN 100 ELSE 60 END AS InRangeBot_60_100, +--100 to 200 +CASE WHEN hzdepb_r < 100 THEN 0 +WHEN hzdept_r >200 THEN 0 +WHEN hzdepb_r >= 100 AND hzdept_r < 100 THEN 100 +WHEN hzdept_r < 100 THEN 0 +WHEN hzdept_r < 200 then hzdept_r ELSE 100 END AS InRangeTop_100_200 , +CASE WHEN hzdept_r > 200 THEN 0 +WHEN hzdepb_r < 100 THEN 0 +WHEN hzdepb_r <= 200 THEN hzdepb_r WHEN hzdepb_r > 200 and hzdept_r < 200 THEN 200 ELSE 100 END AS InRangeBot_100_200, +CASE WHEN hzdepb_r < 20 THEN 0 +WHEN hzdept_r >50 THEN 0 +WHEN hzdepb_r >= 20 AND hzdept_r < 20 THEN 20 +WHEN hzdept_r < 20 THEN 0 +WHEN hzdept_r < 50 then hzdept_r ELSE 20 END AS InRangeTop_20_50 , +CASE WHEN hzdept_r > 50 THEN 0 +WHEN hzdepb_r < 20 THEN 0 +WHEN hzdepb_r <= 50 THEN hzdepb_r WHEN hzdepb_r > 50 and hzdept_r < 50 THEN 50 ELSE 20 END AS InRangeBot_20_50, +CASE WHEN hzdepb_r < 50 THEN 0 +WHEN hzdept_r >100 THEN 0 +WHEN hzdepb_r >= 50 AND hzdept_r < 50 THEN 50 +WHEN hzdept_r < 50 THEN 0 +WHEN hzdept_r < 100 then hzdept_r ELSE 50 END AS InRangeTop_50_100 , +CASE WHEN hzdept_r > 100 THEN 0 +WHEN hzdepb_r < 50 THEN 0 +WHEN hzdepb_r <= 100 THEN hzdepb_r WHEN hzdepb_r > 100 and hzdept_r < 100 THEN 100 ELSE 50 END AS InRangeBot_50_100, +om_r, fragvol, dbthirdbar_r, cokey, mukey, 100.0 - fragvol AS frag_main +INTO #SOC +FROM #acpf +ORDER BY cokey, hzdept_r ASC, hzdepb_r ASC, chkey +; + +SELECT mukey, cokey, hzname, chkey, comppct_r, hzdept_r, hzdepb_r, thickness, +InRangeTop_0_150, +InRangeBot_0_150, +InRangeTop_0_30, +InRangeBot_0_30, +InRangeTop_20_50, +InRangeBot_20_50, +InRangeTop_50_100 , +InRangeBot_50_100, +(( ((InRangeBot_0_150 - InRangeTop_0_150) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_150, +(( ((InRangeBot_0_30 - InRangeTop_0_30) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_30, +---Removed * ( comppct_r * 100 ) +((((InRangeBot_20_50 - InRangeTop_20_50) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_20_50, +---Removed * ( comppct_r * 100 ) +((((InRangeBot_50_100 - InRangeTop_50_100) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_50_100, +(( ((InRangeBot_0_5 - InRangeTop_0_5) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_0_5, +(( ((InRangeBot_5_15 - InRangeTop_5_15) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_5_15, +(( ((InRangeBot_15_30 - InRangeTop_15_30) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_15_30, +(( ((InRangeBot_30_60 - InRangeTop_30_60) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_30_60, +(( ((InRangeBot_60_100 - InRangeTop_60_100) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_60_100, +(( ((InRangeBot_100_200 - InRangeTop_100_200) * ( ( om_r / 1.724 ) * dbthirdbar_r )) / 100.0 ) * ((100.0 - fragvol) / 100.0)) AS HZ_SOC_100_200 +---Removed * ( comppct_r * 100 ) +INTO #SOC2 +FROM #SOC +ORDER BY mukey ,cokey, comppct_r DESC, hzdept_r ASC, hzdepb_r ASC, chkey +; + +---Aggregates and sum it by component. +SELECT DISTINCT cokey, mukey, +ROUND (SUM (HZ_SOC_0_150) over(PARTITION BY cokey) ,4) AS CO_SOC_0_150, +ROUND (SUM (HZ_SOC_0_30) over(PARTITION BY cokey) ,4) AS CO_SOC_0_30, +ROUND (SUM (HZ_SOC_20_50) over(PARTITION BY cokey),4) AS CO_SOC_20_50, +ROUND (SUM (HZ_SOC_50_100) over(PARTITION BY cokey),4) AS CO_SOC_50_100, +ROUND (SUM (HZ_SOC_0_5) over(PARTITION BY cokey),4) AS CO_SOC_0_5, +ROUND (SUM (HZ_SOC_5_15) over(PARTITION BY cokey),4) AS CO_SOC_5_15, +ROUND (SUM (HZ_SOC_15_30) over(PARTITION BY cokey),4) AS CO_SOC_15_30, +ROUND (SUM (HZ_SOC_30_60) over(PARTITION BY cokey),4) AS CO_SOC_30_60, +ROUND (SUM (HZ_SOC_60_100) over(PARTITION BY cokey),4) AS CO_SOC_60_100, +ROUND (SUM (HZ_SOC_100_200) over(PARTITION BY cokey),4) AS CO_SOC_100_200 +INTO #SOC3 +FROM #SOC2 +GROUP BY mukey, cokey, HZ_SOC_0_150, HZ_SOC_0_30, HZ_SOC_20_50, HZ_SOC_50_100, HZ_SOC_0_5, HZ_SOC_5_15, HZ_SOC_15_30, HZ_SOC_30_60, HZ_SOC_60_100, HZ_SOC_100_200 +; + +SELECT DISTINCT #SOC3.cokey, #SOC3.mukey, adj_comp_pct AS WEIGHTED_COMP_PCT, +CO_SOC_0_30, CO_SOC_0_30 * adj_comp_pct AS WEIGHTED_CO_SOC_0_30, +CO_SOC_20_50, CO_SOC_20_50 * adj_comp_pct AS WEIGHTED_CO_SOC_20_50, +CO_SOC_50_100, CO_SOC_50_100 * adj_comp_pct AS WEIGHTED_CO_SOC_50_100, +CO_SOC_0_150, CO_SOC_0_150 * adj_comp_pct AS WEIGHTED_CO_SOC_0_150, +CO_SOC_0_5, CO_SOC_0_5 * adj_comp_pct AS WEIGHTED_CO_SOC_0_5, +CO_SOC_5_15, CO_SOC_5_15 * adj_comp_pct AS WEIGHTED_CO_SOC_5_15, +CO_SOC_15_30, CO_SOC_15_30 * adj_comp_pct AS WEIGHTED_CO_SOC_15_30, +CO_SOC_30_60, CO_SOC_30_60 * adj_comp_pct AS WEIGHTED_CO_SOC_30_60, +CO_SOC_60_100, CO_SOC_60_100 * adj_comp_pct AS WEIGHTED_CO_SOC_60_100, +CO_SOC_100_200 , CO_SOC_100_200 * adj_comp_pct AS WEIGHTED_CO_SOC_100_200 +INTO #SOC4 +FROM #SOC3 +INNER JOIN #muacpf ON #muacpf.cokey = #SOC3.cokey +GROUP BY #SOC3.cokey, #SOC3.mukey, adj_comp_pct , CO_SOC_0_30, CO_SOC_20_50,CO_SOC_50_100, CO_SOC_0_150, CO_SOC_0_5, CO_SOC_5_15, CO_SOC_15_30, CO_SOC_30_60,CO_SOC_60_100, CO_SOC_100_200 +; + +-- Unit Conversion +SELECT DISTINCT #M4.mukey, #M4.aoiid , +#M4.landunit, +landunit_acres, mapunit_acres, ROUND (SUM (WEIGHTED_CO_SOC_0_30) OVER(PARTITION BY #M4.aoiid, #SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_30 , +ROUND (SUM (WEIGHTED_CO_SOC_20_50) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_20_50 , +ROUND (SUM (WEIGHTED_CO_SOC_50_100) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_50_100, +ROUND (SUM (WEIGHTED_CO_SOC_0_150) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_150, +ROUND (SUM (WEIGHTED_CO_SOC_0_5) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_0_5 , +ROUND (SUM (WEIGHTED_CO_SOC_5_15) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_5_15 , +ROUND (SUM (WEIGHTED_CO_SOC_15_30) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_15_30 , +ROUND (SUM (WEIGHTED_CO_SOC_30_60) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_30_60 , +ROUND (SUM (WEIGHTED_CO_SOC_60_100) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_60_100 , +ROUND (SUM (WEIGHTED_CO_SOC_100_200) OVER(PARTITION BY #M4.aoiid ,#SOC4.mukey) ,4) * 100 AS SOCSTOCK_100_200 +INTO #SOC5 +FROM #SOC4 +LEFT OUTER JOIN #M4 ON #M4.mukey = #SOC4.mukey +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #M4.aoiid +GROUP BY #M4.mukey, #SOC4.mukey, #M4.aoiid , +#M4.landunit, +landunit_acres, mapunit_acres,WEIGHTED_CO_SOC_0_30, WEIGHTED_CO_SOC_20_50, WEIGHTED_CO_SOC_50_100, WEIGHTED_CO_SOC_0_5, WEIGHTED_CO_SOC_5_15, WEIGHTED_CO_SOC_15_30, WEIGHTED_CO_SOC_30_60, WEIGHTED_CO_SOC_60_100, WEIGHTED_CO_SOC_100_200, #SOC4.WEIGHTED_CO_SOC_0_150 +; + +CREATE TABLE #SOC6 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +SOCSTOCK_0_5_Weighted_Average DECIMAL (10, 2), +SOCSTOCK_0_30_Weighted_Average DECIMAL (10, 2), +SOCSTOCK_0_150_Weighted_Average DECIMAL (10, 2) +) +; + +INSERT INTO #SOC6 +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_5) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_5_Weighted_Average, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_30) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_30_Weighted_Average, +SUM ((mapunit_acres / landunit_acres) * SOCSTOCK_0_150) OVER(PARTITION BY aoiid) AS SOCSTOCK_0_150_Weighted_Average +FROM #SOC5 +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, SOCSTOCK_0_5, SOCSTOCK_0_30, SOCSTOCK_0_150 +; + +--Begin AWS +CREATE TABLE #acpfaws +(aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres DECIMAL (10, 2), +mu_pct_sum INT, +aws0150wta DECIMAL (10, 2) ) +; + +INSERT INTO #acpfaws +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +mu_pct_sum, +aws0150wta +FROM (#M4 AS MA44 +INNER JOIN muaggatt AS mt on MA44.mukey = mt.mukey ) +; + +CREATE TABLE #aws1 +( aoiid INT, +landunit CHAR(20), +landunit_acres DECIMAL (10, 2), +AWS_Weighted_Average0_150 DECIMAL (10, 2) ) +; + +INSERT INTO #aws1 +SELECT DISTINCT +#acpfaws.aoiid , +#acpfaws.landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * aws0150wta) OVER(PARTITION BY #acpfaws.aoiid) AS AWS_Weighted_Average0_150 +FROM #acpfaws +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.aoiid = #acpfaws.aoiid +GROUP BY #acpfaws.aoiid, #acpfaws.landunit, mapunit_acres, landunit_acres, aws0150wta +; + +--Begin Aggregate Stability +CREATE TABLE #agg1 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml DECIMAL (6, 2) , +omr DECIMAL (6, 2) , +omh DECIMAL (6, 2), +sar_l FLOAT, +sar_r FLOAT, +sar_h FLOAT, +cec7_l FLOAT, +cec7_r FLOAT, +cec7_h FLOAT, +ec_l FLOAT, +ec_r FLOAT, +ec_h FLOAT, +esp_l DECIMAL (10, 2), +esp_r DECIMAL (10, 2), +esp_h DECIMAL (10, 2), +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg1 +SELECT DISTINCT +MA44.aoiid , +MA44.landunit, +MA44.mukey, +MA44.mapunit_acres, +MA44.cokey, +MA44.compname, +MA44.comppct_r, +MA44.majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +CASE WHEN claytotal_l > 92 then 92 WHEN claytotal_l < 8 THEN 8 ELSE claytotal_l END AS claytotall, +CASE WHEN claytotal_r > 92 then 92 ELSE claytotal_r END AS claytotalr, +CASE WHEN claytotal_h > 92 then 92 ELSE claytotal_h END AS claytotalh, +CASE WHEN om_l <0.01 THEN 0.05 WHEN om_l > 17 then 17 ELSE om_l END AS oml, +CASE WHEN om_r <0.01 THEN 0.05 WHEN om_r > 17 then 17 ELSE om_r END AS omr , +CASE WHEN om_h <0.01 THEN 0.05 WHEN om_h > 17 then 17 ELSE om_h END AS omh , +sar_l, +sar_r, +sar_h, +cec7_l, +cec7_r, +cec7_h, +ec_l, +ec_r, +ec_h, +(100 * (-0.0126 + 0.01475 * sar_l)) / (1 + (-0.0126 + 0.01475 * sar_l)) AS esp_l, +(100 * (-0.0126 + 0.01475 * sar_r)) / (1 + (-0.0126 + 0.01475 * sar_r)) AS esp_r, +(100 * (-0.0126 + 0.01475 * sar_h)) / (1 + (-0.0126 + 0.01475 * sar_h)) AS esp_h, +(SELECT TOP 1 texcl FROM chtexturegrp AS chtg INNER JOIN chtexture AS cht ON chtg.chtgkey = cht.chtgkey AND chtg.rvindicator = 'yes' AND chtg.chkey=cha.chkey) AS tcl, +major_mu_pct_sum, mu_pct_sum +FROM (#M4 AS MA44 INNER JOIN (component AS coa INNER JOIN chorizon AS cha ON cha.cokey = coa.cokey AND cha.hzdept_r < 15 ) ON MA44.cokey = coa.cokey AND MA44.majcompflag = 'yes' ) +; + +CREATE TABLE #agg2 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml FLOAT, +omr FLOAT, +omh FLOAT, +sar_l FLOAT, +sar_r FLOAT, +sar_h FLOAT, +cec7_l FLOAT, +cec7_r FLOAT, +cec7_h FLOAT, +ec_l FLOAT, +ec_r FLOAT, +ec_h FLOAT, +esp_l FLOAT, +esp_r FLOAT, +esp_h FLOAT, +tcl CHAR(40), +sandy INT, +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg2 +SELECT DISTINCT +aoiid , +landunit, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +claytotall, +claytotalr, +claytotalh, +oml , +omr , +omh , +sar_l, +sar_r, +sar_h, +cec7_l, +cec7_r, +cec7_h, +ec_l, +ec_r, +ec_h, +CASE WHEN cec7_l < 50 + 0 AND cec7_l IS NOT NULL AND sar_l IS NOT NULL AND sar_l !=0 AND sar_l < 40 + 0 AND ec_l < 20 + 0 THEN esp_l +WHEN sar_l !=0 AND sar_l IS NOT NULL THEN 1.5 * sar_l / (1 + 0.015 * sar_l) +WHEN sar_l < 0.01 THEN 0 ELSE NULL END AS esp_l, +CASE WHEN cec7_r < 50 + 0 AND cec7_r IS NOT NULL AND sar_r IS NOT NULL AND sar_r !=0 AND sar_r < 40 + 0 AND ec_r < 20 + 0 THEN esp_r +WHEN sar_r !=0 and sar_r IS NOT NULL then 1.5 * sar_r / (1 + 0.015 * sar_r) +WHEN sar_r < 0.01 THEN 0 ELSE NULL END AS esp_r, +CASE WHEN cec7_h < 50 + 0 AND cec7_h IS NOT NULL AND sar_h IS NOT NULL AND sar_h !=0 AND sar_h < 40 + 0 AND ec_h < 20 + 0 THEN esp_h +WHEN sar_h !=0 AND sar_h IS NOT NULL THEN 1.5 * sar_h / (1 + 0.015 * sar_h) +WHEN sar_h < 0.01 THEN 0 ELSE NULL END AS esp_h, +tcl, +CASE WHEN tcl = 'Loamy coarse sand' THEN 1 +WHEN tcl = 'Loamy fine sand' THEN 1 +WHEN tcl = 'Loamy sand' THEN 1 +WHEN tcl = 'Sand' THEN 1 +WHEN tcl = 'Coarse sand' THEN 1 +WHEN tcl = 'Fine sand' THEN 1 ELSE 0 END AS sandy, +major_mu_pct_sum, +mu_pct_sum +FROM #agg1 +; + +CREATE TABLE #agg3 +( aoiid INT , +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +claytotall FLOAT, +claytotalr FLOAT, +claytotalh FLOAT, +oml FLOAT, +omr FLOAT, +omh FLOAT, +sandy INT, +AgStab_l DECIMAL (10, 2), +AgStab_r DECIMAL (10, 2), +AgStab_h DECIMAL (10, 2), +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #agg3 +SELECT DISTINCT +aoiid, +landunit, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +claytotall, +claytotalr, +claytotalh, +oml, +omr, +omh, +sandy, +49.7 + 13.7 * LOG(oml) + 0.61 * claytotall - 0.0045 * POWER(claytotall, 2) - 0.28 * esp_h - 0.06 * POWER(esp_h, 2) AS AgStab_l, +49.7 + 13.7 * LOG(omr) + 0.61 * claytotalr - 0.0045 * POWER(claytotalr, 2) - 0.28 * esp_r - 0.06 * POWER(esp_r, 2) AS AgStab_r, +49.7 + 13.7 * LOG(omh) + 0.61 * claytotalh - 0.0045 * POWER(claytotalh, 2) - 0.28 * esp_l - 0.06 * POWER(esp_l, 2) AS AgStab_h, +tcl, +major_mu_pct_sum, +mu_pct_sum +FROM #agg2 +; + +CREATE TABLE #agg4 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +AgStab_l FLOAT, +AgStab_r FLOAT, +AgStab_h FLOAT, +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT, +thickness INT, +AGG_InRangeTop_0_15 INT, +AGG_InRangeBot_0_15 INT ) +; + +INSERT INTO #agg4 +SELECT DISTINCT ag.aoiid , +ag.landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +CASE WHEN AgStab_l > 100 THEN 100 WHEN claytotall >= 0 AND claytotall < 5 THEN NULL WHEN sandy=1 THEN null WHEN oml > 20 THEN NULL ELSE AgStab_l END AS AgStab_l, +CASE WHEN AgStab_r > 100 THEN 100 WHEN claytotalr >= 0 AND claytotalr < 5 THEN NULL WHEN sandy=1 THEN null WHEN omr > 20 THEN NULL ELSE AgStab_r END AS AgStab_r, +CASE WHEN AgStab_h > 100 THEN 100 WHEN claytotalh >= 0 AND claytotalh < 5 THEN NULL WHEN sandy=1 THEN null WHEN omh > 20 THEN NULL ELSE AgStab_h END AS AgStab_h, +tcl, major_mu_pct_sum, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct, CASE WHEN hzdepb_r IS NULL THEN 0 +WHEN hzdept_r IS NULL THEN 0 ELSE hzdepb_r-hzdept_r END AS thickness, +CASE WHEN hzdept_r < 15 THEN hzdept_r ELSE 0 END AS AGG_InRangeTop_0_15, +CASE WHEN hzdepb_r <= 15 THEN hzdepb_r WHEN hzdepb_r > 15 and hzdept_r < 15 THEN 15 ELSE 0 END AS AGG_InRangeBot_0_15 +FROM #AoiAcres +LEFT OUTER JOIN #agg3 AS ag ON ag.aoiid = #AoiAcres.aoiid WHERE majcompflag = 'Yes' GROUP BY ag.aoiid , +ag.landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l , AgStab_h, AgStab_r, +claytotall, claytotalr, claytotalh, +sandy, +comppct_r, +major_mu_pct_sum, +mu_pct_sum, +oml, omr, omh, +tcl +; + +CREATE TABLE #agg5 +( aoiid INT , +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +comppct_r INT, +majcompflag CHAR(3), +localphase CHAR(60), +hzname CHAR(20), +hzdept_r INT, +hzdepb_r INT, +AgStab_l FLOAT, +AgStab_r FLOAT, +AgStab_h FLOAT, +tcl CHAR(40), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT, +thickness INT, +AGG_InRangeTop_0_15 INT, +AGG_InRangeBot_0_15 INT, +InRangeThickness INT, +InRangeSumThickness INT ) +; + +INSERT INTO #agg5 +SELECT DISTINCT aoiid, +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l, +AgStab_r, +AgStab_h, +tcl, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +thickness, +AGG_InRangeTop_0_15, +AGG_InRangeBot_0_15, +CASE WHEN AGG_InRangeTop_0_15 IS NULL THEN 0 +WHEN AGG_InRangeBot_0_15 IS NULL THEN 0 ELSE AGG_InRangeBot_0_15 - AGG_InRangeTop_0_15 END AS InRangeThickness, +SUM (CASE WHEN AGG_InRangeTop_0_15 IS NULL THEN 0 +WHEN AGG_InRangeBot_0_15 IS NULL THEN 0 ELSE AGG_InRangeBot_0_15 - AGG_InRangeTop_0_15 END) OVER(PARTITION BY cokey, aoiid) AS InRangeSumThickness +FROM #agg4 +GROUP BY aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +comppct_r, +majcompflag, +localphase, +hzname, +hzdept_r, +hzdepb_r, +AgStab_l, +AgStab_r, +AgStab_h, +tcl, major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +thickness, +AGG_InRangeTop_0_15, +AGG_InRangeBot_0_15 +; + +CREATE TABLE #agg6 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +compname CHAR(60), +localphase CHAR(60), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT , +--AGG_InRangeTop_0_15 INT, +--AGG_InRangeBot_0_15 INT, +--InRangeThickness INT, +--InRangeSumThickness INT, +--AgStab_l FLOAT, +--AgStab_r FLOAT, +--AgStab_h FLOAT, +comp_weighted_average_l FLOAT, +comp_weighted_average_r FLOAT, +comp_weighted_average_h FLOAT ) +; + +INSERT INTO #agg6 +SELECT DISTINCT aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +localphase, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_l) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_l, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_r) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_r, +SUM ((InRangeThickness / CAST (InRangeSumThickness AS FLOAT)) * AgStab_h) OVER(PARTITION BY ag5.cokey, aoiid) AS comp_weighted_average_h +FROM #agg5 AS ag5 +WHERE InRangeSumThickness !=0 +GROUP BY aoiid, landunit, +landunit_acres, +mukey, +mapunit_acres, +cokey, +compname, +localphase, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +-- AgStab_l , +--AgStab_r , +--AgStab_h , +--AGG_InRangeTop_0_15, +--AGG_InRangeBot_0_15, +InRangeThickness, InRangeSumThickness, +AgStab_l, AgStab_r, AgStab_h +; + +---Map unit Aggregation for mapunit table +CREATE TABLE #agg7 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +major_mu_pct_sum INT, +mu_pct_sum INT, +MU_SUM_AGG_L DECIMAL (10, 2), +MU_SUM_AGG_R DECIMAL (10, 2), +MU_SUM_AGG_H DECIMAL (10, 2) ) +--MU_Weighted_Average_R FLOAT ) +; + +-- Map Unit Aggregation +INSERT INTO #agg7 +SELECT DISTINCT aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +major_mu_pct_sum, +mu_pct_sum, +SUM (adj_comp_pct * comp_weighted_average_l) OVER(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_L, +SUM (adj_comp_pct * comp_weighted_average_r) OVER(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_R, +SUM (adj_comp_pct * comp_weighted_average_h) over(PARTITION BY ag6.mukey, aoiid ) AS MU_SUM_AGG_H +--(mapunit_acres/landunit_acres)*MU_SUM_AGG_R AS MU_Weighted_Average_R +FROM #agg6 AS ag6 +GROUP BY aoiid , +landunit, +landunit_acres, +mukey, +mapunit_acres, +major_mu_pct_sum, +mu_pct_sum, +adj_comp_pct, +comp_weighted_average_l, +comp_weighted_average_r, +comp_weighted_average_h +; + +CREATE TABLE #agg7a +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mapunit_acres FLOAT, +MU_SUM_AGG_L FLOAT, +MU_SUM_AGG_R FLOAT, +MU_SUM_AGG_H FLOAT ) +; + +INSERT INTO #agg7a +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +mapunit_acres, +CASE WHEN MU_SUM_AGG_R = 0 THEN 0 ELSE MU_SUM_AGG_L END AS MU_SUM_AGG_L , +MU_SUM_AGG_R , +CASE WHEN MU_SUM_AGG_R = 0 THEN 0 ELSE MU_SUM_AGG_H END AS MU_SUM_AGG_H +FROM #agg7 +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, MU_SUM_AGG_L, MU_SUM_AGG_R, MU_SUM_AGG_H +; + +CREATE TABLE #agg8 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +LU_AGG_Weighted_Average_L DECIMAL (10, 2), +LU_AGG_Weighted_Average_R DECIMAL (10, 2), +LU_AGG_Weighted_Average_H DECIMAL (10, 2) ) +; + +INSERT INTO #agg8 +SELECT DISTINCT +aoiid , +landunit, +landunit_acres, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_L) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_L, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_R) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_R, +SUM ((mapunit_acres / landunit_acres) * MU_SUM_AGG_H) OVER(PARTITION BY aoiid) AS LU_AGG_Weighted_Average_H +FROM #agg7a +GROUP BY aoiid, landunit, mapunit_acres, landunit_acres, MU_SUM_AGG_L, MU_SUM_AGG_R, MU_SUM_AGG_H +; + +-- Flooding frequency and Ponding frequency +CREATE TABLE #pf +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres DECIMAL (10, 2), +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +flodfreq CHAR(20), +pondfreq CHAR(20), +major_mu_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #pf +SELECT DISTINCT +aoiid, +landunit, +M44.mukey, +mapunit_acres , +M44.cokey AS cokey, +M44.compname AS cname, +M44.comppct_r AS copct , +M44.majcompflag AS majcompflag, +(SELECT TOP 1 flodfreqcl FROM comonth, MetadataDomainMaster AS MD, MetadataDomainDetail AS DD WHERE comonth.cokey = M44.cokey AND flodfreqcl = ChoiceLabel AND DomainName = 'flooding_frequency_class' AND +MD.DomainID = DD.DomainID order by choicesequence desc) as flodfreq, +(SELECT TOP 1 pondfreqcl FROM comonth, MetadataDomainMaster AS MD, MetadataDomainDetail AS DD WHERE comonth.cokey = M44.cokey AND pondfreqcl = ChoiceLabel AND DomainName = 'ponding_frequency_class' AND +MD.DomainID = DD.DomainID ORDER BY choicesequence DESC) AS pondfreq, +major_mu_pct_sum, mu_pct_sum +FROM #M4 AS M44 +INNER JOIN comonth AS CM ON M44.cokey = CM.cokey AND M44.majcompflag = 'yes' +AND CASE +WHEN (flodfreqcl IN ('occasional', 'common', 'frequent', 'very frequent')) THEN 1 +WHEN (pondfreqcl IN ('occasional', 'common', 'frequent')) THEN 1 +ELSE 2 END = 1 +GROUP BY aoiid, landunit, M44.mukey, mapunit_acres, major_mu_pct_sum, mu_pct_sum, M44.cokey,M44.compname , M44.majcompflag, M44.comppct_r, flodfreqcl, pondfreqcl +; + +CREATE TABLE #pf1 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +flodfreq CHAR(20), +pondfreq CHAR(20), +major_mu_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT ) +; + +INSERT INTO #pf1 +SELECT DISTINCT pf.aoiid, pf.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, flodfreq, pondfreq, major_mu_pct_sum, mu_pct_sum, (1.0 * copct / NULLIF(major_mu_pct_sum, 0)) AS adj_comp_pct +FROM #AoiAcres +LEFT OUTER JOIN #pf AS pf ON pf.aoiid = #AoiAcres.aoiid +GROUP BY pf.aoiid, pf.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, flodfreq, pondfreq, major_mu_pct_sum, mu_pct_sum +; + +CREATE TABLE #pf2 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +cname CHAR(60), +copct INT, +major_MU_pct_sum INT, +MU_pct_sum INT, +adj_comp_pct FLOAT, +co_acres FLOAT ) +; + +INSERT INTO #pf2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, major_MU_pct_sum, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 2) AS co_acres +FROM #pf1 +; + + +--Begin Water table +CREATE TABLE #wet +( aoiid INT, +landunit CHAR(20), +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +soimoistdept_l INT, +soimoistdept_r INT, +soimoiststat CHAR(7), +MIN_soimoistdept_l INT, +MIN_soimoistdept_r INT, +major_MU_pct_sum INT, +mu_pct_sum INT ) +; + +INSERT INTO #wet +SELECT +aoiid, +landunit, +M44.mukey, +mapunit_acres, +M44.cokey AS cokey, +M44.compname AS cname, +M44.comppct_r AS copct , +M44.majcompflag AS majcompflag, +soimoistdept_l, +soimoistdept_r, +soimoiststat, +MIN (soimoistdept_l) OVER(PARTITION BY M44.cokey) AS MIN_soimoistdept_l, +MIN (soimoistdept_r) OVER(PARTITION BY M44.cokey) AS MIN_soimoistdept_r, +major_MU_pct_sum, mu_pct_sum +FROM (#M4 AS M44 INNER JOIN (comonth AS CM INNER JOIN cosoilmoist AS COSM ON COSM.comonthkey = CM.comonthkey AND soimoiststat = 'Wet' AND CASE WHEN soimoistdept_l < 46 THEN 1 WHEN soimoistdept_r < 46 THEN 1 ELSE 2 END = 1 +) ON M44.cokey = CM.cokey AND M44.majcompflag = 'yes' +INNER JOIN component ON M44.cokey = component.cokey +AND (CASE WHEN soimoistdept_l IS NULL THEN soimoistdept_r ELSE soimoistdept_l END) = (SELECT MIN (CASE WHEN soimoistdept_l IS NULL THEN soimoistdept_r ELSE soimoistdept_l END) +FROM comonth AS CM2 +INNER JOIN cosoilmoist AS COSM2 ON COSM2.comonthkey = CM2.comonthkey AND soimoiststat = 'Wet' AND CASE WHEN soimoistdept_l < 46 THEN 1 WHEN soimoistdept_r < 46 THEN 1 ELSE 2 END = 1 AND CM2.cokey=M44.cokey +)) +WHERE CASE +WHEN (taxorder = 'gelisols' AND taxtempcl IN ('hypergelic', 'pergelic', 'subgelic') AND CM.month IN ('jul', 'aug')) THEN 1 +WHEN (taxtempregime IN ('cryic', 'pergelic', 'isofrigid') AND CM.month IN ('jul', 'aug')) THEN 1 +WHEN (taxtempregime IN ('frigid') AND CM.month IN ('may', 'jun', 'jul', 'aug', 'sep')) THEN 1 +WHEN (taxtempregime IN ('mesic') AND CM.month IN ( 'apr','may', 'jun', 'jul', 'aug', 'sep', 'oct')) THEN 1 +WHEN (taxtempregime IN ('thermic', 'hyperthermic') and CM.month IN ('mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct'))THEN 1 +WHEN (taxtempregime IN ('isothermic', 'isohyperthermic', 'isomesic') AND CM.month IN ('feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov')) THEN 1 +WHEN (CM.month IN ('jun', 'jul')) THEN 1 +ELSE 2 END = 1 +; + +CREATE TABLE #wet1 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT , +cname CHAR(60), +copct INT, +majcompflag CHAR(3), +MIN_soimoistdept_l INT, +MIN_soimoistdept_r INT, +major_MU_pct_sum INT, +mu_pct_sum INT, +adj_comp_pct FLOAT ) +; + +INSERT INTO #wet1 +SELECT DISTINCT #AoiAcres.aoiid, #AoiAcres.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, MIN_soimoistdept_l, MIN_soimoistdept_r, major_mu_pct_sum, mu_pct_sum, (1.0 * copct / major_mu_pct_sum) AS adj_comp_pct +FROM #AoiAcres +LEFT OUTER JOIN #wet AS wet ON wet.aoiid = #AoiAcres.aoiid +GROUP BY #AoiAcres.aoiid, #AoiAcres.landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, majcompflag, MIN_soimoistdept_r, MIN_soimoistdept_l, major_mu_pct_sum, mu_pct_sum +; + +CREATE TABLE #wet2 +( aoiid INT, +landunit CHAR(20), +landunit_acres FLOAT, +mukey INT, +mapunit_acres FLOAT, +cokey INT, +cname CHAR(60), +copct INT, +major_MU_pct_sum INT, +MU_pct_sum INT, +adj_comp_pct FLOAT, +co_acres FLOAT ) +; + +INSERT INTO #wet2 +SELECT aoiid, landunit, landunit_acres, mukey, mapunit_acres, cokey, cname, copct, major_MU_pct_sum, +MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #wet1 +; + +-- Hydric Soil Interp begins here +--INSERT INTO #Hydric_A (mukey, cokey, hydric_pct) + -- SELECT DISTINCT M4.mukey, M4.cokey, M4.comppct_r AS hydric_pct + -- FROM #M4 M4 + -- LEFT OUTER JOIN component C ON M4.cokey = C.cokey + -- WHERE C.hydricrating = 'Yes' +--; + +-- Populate #Hydric_B with mapunit-level hydric percent ratings +--INSERT INTO #Hydric_B (mukey, hydric_pct) + -- SELECT mukey, SUM(hydric_pct) AS hydric_pct + -- FROM #Hydric_A H1 + -- GROUP BY mukey + -- ORDER BY mukey +--; + +-- Hydric Soil Interp +INSERT INTO #Hydric1 (mukey, comp_count, count_maj_comp, all_hydric, all_not_hydric, maj_hydric, maj_not_hydric, hydric_inclusions, hydric_null) + SELECT DISTINCT M4.mukey, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey) AS comp_count, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes') AS count_maj_comp, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating = 'Yes' ) AS all_hydric, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating != 'Yes') AS all_not_hydric, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes' AND hydricrating = 'Yes') AS maj_hydric, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag = 'Yes' AND hydricrating != 'Yes') AS maj_not_hydric, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND majcompflag != 'Yes' AND hydricrating = 'Yes' ) AS hydric_inclusions, + (SELECT TOP 1 COUNT(*) + FROM mapunit + INNER JOIN component ON component.mukey = mapunit.mukey AND mapunit.mukey = M4.mukey AND hydricrating IS NULL ) AS hydric_null + FROM #M4 AS M4 +; + +-- Takes hydric count statistics and converts them to interpretation-type rating classes (hydric_rating) +INSERT INTO #Hydric2 (mukey, hydric_rating, low_pct, rv_pct, high_pct) + SELECT + mukey, + CASE WHEN comp_count = all_not_hydric + hydric_null THEN 'Nonhydric' + WHEN comp_count = all_hydric THEN 'Hydric' + WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 'Predominantly hydric' + WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 'Predominantly nonhydric' + WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 'Partially hydric' + ELSE 'Error' + END AS hydric_rating, + + CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' + WHEN comp_count = all_hydric THEN 1 --'Hydric' + WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.80 --'Predominantly hydric' + WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.01 --'Predominantly nonhydric' + WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.15 --'Partially hydric' + ELSE 0.00 --'Error' + END AS low_pct, + + CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' + WHEN comp_count = all_hydric THEN 1 --'Hydric' + WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.85 --'Predominantly hydric' + WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.05 --'Predominantly nonhydric' + WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.50 --'Partially hydric' + ELSE 0.00 --'Error' + END AS rv_pct, + + CASE WHEN comp_count = all_not_hydric + hydric_null THEN 0.00 --'Nonhydric' + WHEN comp_count = all_hydric THEN 1 --'Hydric' + WHEN comp_count != all_hydric AND count_maj_comp = maj_hydric THEN 0.99 --'Predominantly hydric' + WHEN hydric_inclusions >= 0.5 AND maj_hydric < 0.5 THEN 0.20 --'Predominantly nonhydric' + WHEN maj_not_hydric >= 0.5 AND maj_hydric >= 0.5 THEN 0.79 --'Partially hydric' + ELSE 0.00 --'Error' + END AS high_pct + FROM #Hydric1 +; + +INSERT INTO #Hydric3 ( aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres) + SELECT DISTINCT aoiid, + landunit, + 'Hydric Soils' AS attributename, + ROUND (SUM (mapunit_acres ) OVER(PARTITION BY aoiid), 2) AS aoi_acres, + H3.mukey, + CASE WHEN hydric_rating = 'Nonhydric' THEN 0 ELSE 1 END AS hydric_flag, + mapunit_acres * low_pct AS low_acres, + mapunit_acres * rv_pct AS rv_acres , + mapunit_acres * high_pct AS high_acres + FROM #Hydric2 AS H3 + INNER JOIN #M2 AS MH2 ON MH2.mukey = H3.mukey + GROUP BY aoiid, landunit, H3.mukey, mapunit_acres, hydric_rating, low_pct, rv_pct, high_pct +; + +--Easements +INSERT INTO #easHydric3 ( aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres, lowpct, rvpct, highpct ) +SELECT aoiid, landunit, attributename, aoi_acres, mukey, hydric_flag, low_acres, rv_acres, high_acres, +CASE WHEN low_acres = 0 THEN 0 WHEN low_acres IS NULL THEN NULL ELSE ROUND (low_acres/aoi_acres,2) END AS lowpct, +CASE WHEN rv_acres = 0 THEN 0 WHEN rv_acres IS NULL THEN NULL ELSE ROUND (rv_acres/aoi_acres,2) END AS rvpct, +CASE WHEN high_acres = 0 THEN 0 WHEN high_acres IS NULL THEN NULL ELSE ROUND (high_acres/aoi_acres,2) END AS highpct +FROM #Hydric3 + + +-- ************************************************************************************************ +-- END OF QUERIES FOR SOIL PROPERTIES... + + +-- Begin query for soil interpretation: Surface Salt Concentration +-- ************************************************************************************************ + +SELECT @attributeName = 'Surface Salt Concentration'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Surface Salt Concentration +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Soil Susceptibility to Compaction +-- ************************************************************************************************ + +SELECT @attributeName = 'Soil Susceptibility to Compaction'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Soil Susceptibility to Compaction +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Organic Matter Depletion +-- ************************************************************************************************ + +SELECT @attributeName = 'Organic Matter Depletion'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Organic Matter Depletion +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Agricultural Organic Soil Subsidence +-- ************************************************************************************************ + +SELECT @attributeName = 'Agricultural Organic Soil Subsidence'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Agricultural Organic Soil Subsidence +-- ************************************************************************************************ + +-- Begin query for soil interpretation: Limitations for Aerobic Soil Organisms +-- ************************************************************************************************ + +SELECT @attributeName = 'Limitations for Aerobic Soil Organisms'; +SELECT @minPct = 10; +SELECT @minAcres = 10; + +-- Get ordered set of interphrc values from sdvattribute.maplegendxml. This is assumed to begin with the 'worst' rating. Need to double-check this for all interps. +SELECT @rating1 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[1]', 'VARCHAR(100)'); +SELECT @rating2 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[2]', 'VARCHAR(100)'); +SELECT @rating3 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[3]', 'VARCHAR(100)'); +SELECT @rating4 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[4]', 'VARCHAR(100)'); +SELECT @rating5 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[5]', 'VARCHAR(100)'); +SELECT @rating6 = (SELECT maplegendxml FROM #SDV WHERE attributename = @attributeName).value('(/Map_Legend/Legend_Elements/Labels/@value)[6]', 'VARCHAR(100)'); + +-- Set interp rulekey and ruledesign as a variable to be used in cointerp query +SELECT @ruleKey = (SELECT rulekey FROM #SDV WHERE attributename = @attributeName); +SELECT @ruleDesign = (SELECT ruledesign FROM #SDV WHERE attributename = @attributeName) +SELECT @notRatedPhrase = (SELECT notratedphrase FROM #SDV WHERE attributename = @attributeName) +; + +-- Add Not rated phrase to @rating variables +IF @notRatedPhrase IS NOT NULL + IF @rating1 IS NULL (SELECT @rating1 = @notRatedPhrase) + ELSE + IF @rating2 IS NULL (SELECT @rating2 = @notRatedPhrase) + ELSE + IF @rating3 IS NULL (SELECT @rating3 = @notRatedPhrase) + ELSE + IF @rating4 IS NULL (SELECT @rating4 = @notRatedPhrase) + ELSE + IF @rating5 IS NULL (SELECT @rating5 = @notRatedPhrase) + ELSE + IF @rating6 IS NULL (SELECT @rating6 = @notRatedPhrase) +; + +-- Append the rating classes for this interp to the #RatingClasses table +INSERT INTO #RatingClasses (attributename, ruledesign, rating1, rating2, rating3, rating4, rating5, rating6) +SELECT @attributeName AS attributename, @ruleDesign AS ruledesign, @rating1 AS rating1, @rating2 AS rating2, @rating3 AS rating3, @rating4 AS rating4, @rating5 AS rating5, @rating6 AS rating6 +; + +-- Populate the #RatingDomain table with a unique rating_key for this interp +SELECT @ratingKey = RTRIM(@attributeName) + ':1'; +IF NOT @rating1 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating1, 1); +SELECT @ratingKey = RTRIM(@attributeName) + ':2'; +IF NOT @rating2 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating2, 2); +SELECT @ratingKey = RTRIM(@attributeName) + ':3'; +IF NOT @rating3 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating3, 3); +SELECT @ratingKey = RTRIM(@attributeName) + ':4'; +IF NOT @rating4 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating4, 4); +SELECT @ratingKey = RTRIM(@attributeName) + ':5'; +IF NOT @rating5 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating5, 5); +SELECT @ratingKey = RTRIM(@attributeName) + ':6'; +IF NOT @rating6 IS NULL INSERT INTO #RatingDomain VALUES( @ratingKey, @attributename, @rating6, 6); + +-- Populate component level ratings using the currently set soil interpretation +TRUNCATE TABLE #M5 +INSERT INTO #M5 +SELECT M4.aoiid, M4.landunit, M4.mukey, mapunit_acres, M4.cokey, M4.compname, M4.comppct_r, TP.interphrc AS rating_class, SUM (M4.comppct_r) OVER(PARTITION BY M4.landunit, M4.mukey) AS mu_pct_sum +FROM #M4 AS M4 +LEFT OUTER JOIN cointerp AS TP ON M4.cokey = TP.cokey AND rulekey = @ruleKey +WHERE M4.majcompflag = 'Yes' +; + +-- Populate component level ratings with adjusted component percent to account for the un-used minor components +TRUNCATE TABLE #M6 +INSERT INTO #M6 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, mu_pct_sum, (1.0 * comppct_r / NULLIF(mu_pct_sum, 0)) AS adj_comp_pct +FROM #M5 +; + +-- Populates component acres by multiplying map unit acres with adjusted component percent +TRUNCATE TABLE #M8 +INSERT INTO #M8 +SELECT aoiid, landunit, mukey, mapunit_acres, cokey, compname, comppct_r, rating_class, MU_pct_sum, adj_comp_pct, ROUND ( (adj_comp_pct * mapunit_acres), 4) AS co_acres +FROM #M6 +; + +-- Aggregates the classes and sums up the component acres by landunit (Tract and Field number) +TRUNCATE TABLE #M10 +INSERT INTO #M10 +SELECT landunit, rating_class, SUM (co_acres) AS rating_acres +FROM #M8 +GROUP BY landunit, rating_class +ORDER BY landunit, rating_acres DESC +; + +-- Detailed Landunit Ratings1: rating acres and rating percent by area for each soil-landunit polygon +INSERT INTO #LandunitRatingsDetailed1 (aoiid, landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres) +SELECT aoiid, M10.landunit, @attributeName AS attributename, M10.rating_class, RD.rating_key, RD.rating_value, +ROUND ((rating_acres / landunit_acres) * 100.0, 2) AS rating_pct, +ROUND (rating_acres, 2) AS rating_acres, +ROUND ( landunit_acres, 2) AS landunit_acres +FROM #M10 M10 +LEFT OUTER JOIN #AoiAcres ON #AoiAcres.landunit = M10.landunit +INNER JOIN #RatingDomain RD ON M10.rating_class = RD.rating_class +WHERE RD.attributename = @attributeName +GROUP BY aoiid, M10.landunit, M10.rating_class, rating_key, rating_acres, landunit_acres, rating_value +ORDER BY landunit, attributename, rating_value DESC +; + +-- #LandunitRatingsDetailed2 is populated with all information plus rolling_pct and rolling_acres which are using in the landunit summary rating. +INSERT INTO #LandunitRatingsDetailed2 (landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, rolling_pct, rolling_acres) + SELECT landunit, attributename, rating_class, rating_key, rating_value, rating_pct, rating_acres, landunit_acres, + rolling_pct = SUM(rating_pct) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ), + rolling_acres = SUM(rating_acres) OVER + ( + PARTITION BY landunit + ORDER BY rating_key ROWS UNBOUNDED PRECEDING + ) + FROM #LandunitRatingsDetailed1 + WHERE attributename = @attributeName + ORDER BY landunit, attributename +; + +-- #LandunitRatingsCART identifies the single, most limiting rating (per landunit) that comprises at least 10% by area or 10 acres. This record will have an id value of 1. +INSERT INTO #LandunitRatingsCART (id, landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres) +SELECT ROW_NUMBER() OVER(PARTITION BY landunit ORDER BY rating_key ASC) AS id, +landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres +FROM #LandunitRatingsDetailed2 +WHERE attributename = @attributeName AND (rolling_pct >= @minPct OR rolling_acres >= @minAcres) +; + +-- End of: Limitations for Aerobic Soil Organisms +-- ************************************************************************************************ + +-- Begin saving the final CART soil interpretation ratings for each landunit. The record for the overall landunit rating will have an id = 1. +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_class, rating_key, rating_value, rolling_pct, rolling_acres, landunit_acres, soils_metadata) + SELECT LC.landunit, LC.attributename, LC.rating_class, LC.rating_key, LC.rating_value, rolling_pct, rolling_acres, landunit_acres, MD.soils_metadata + FROM #LandunitRatingsCART LC + INNER JOIN #RatingDomain RD ON LC.attributename = RD.attributename AND LC.rating_class = RD.rating_class + INNER JOIN #LandunitMetadata MD ON LC.landunit = MD.landunit + WHERE LC.id = 1 + ORDER BY landunit, rating_key +; + +-- Ponding and Flooding CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT #pf2.landunit, 'Ponding or Flooding' AS rating_name, +CASE WHEN SUM (co_acres) IS NULL THEN 2 +WHEN SUM (co_acres) > 0 THEN 1 +WHEN SUM (co_acres) = 0 THEN 0 +ELSE -1 +END AS rating_value, +CASE WHEN SUM (co_acres) IS NULL THEN 'Not rated' +WHEN SUM (co_acres) > 0 THEN 'Yes' +WHEN SUM (co_acres) = 0 THEN 'No' +ELSE 'Error' +END AS rating_class +FROM #pf2 +GROUP BY #pf2.landunit +ORDER BY #pf2.landunit +; + +-- Water Table CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Water Table' AS attribute_name, +CASE WHEN SUM (co_acres) IS NULL THEN 2 +WHEN SUM (co_acres) > 0 THEN 1 +WHEN SUM (co_acres) = 0 THEN 0 +ELSE -1 +END AS rating_value, +CASE WHEN SUM (co_acres) IS NULL THEN 'Not rated' +WHEN SUM (co_acres) > 0 THEN 'Yes' +WHEN SUM (co_acres) = 0 THEN 'No' +ELSE 'Error' +END AS rating_class +FROM #wet2 +GROUP BY landunit +ORDER BY landunit +; + +-- Hydric Soils CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, attributename, +CASE WHEN SUM(rv_acres) IS NULL THEN 2 +WHEN SUM(rv_acres) > 0 THEN 1 +WHEN SUM(rv_acres) = 0 THEN 0 +END AS rating_key, +CASE WHEN SUM(rv_acres) IS NULL THEN 'Not rated' +WHEN SUM(rv_acres) > 0 THEN 'Yes' +WHEN SUM(rv_acres) = 0 THEN 'No' +END AS rating_class +FROM #Hydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; + + +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Organic and Hydric Soils' AS attributename, +CASE WHEN SUM(rv_acres) IS NULL THEN 2 +WHEN SUM(rv_acres) > 0 THEN 1 +WHEN SUM(rv_acres) = 0 THEN 0 +END AS rating_key, +CASE WHEN SUM(rv_acres) IS NULL THEN 'Not rated' +WHEN SUM(rv_acres) > 0 THEN 'Yes' +WHEN SUM(rv_acres) = 0 THEN 'No' +END AS rating_class +FROM #Hydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; +--Easments Hydric 50 Percent + +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Easements Hydric Soils' attributename, +CASE WHEN SUM(rvpct) IS NULL THEN 2 +WHEN SUM(rvpct) >= .50 THEN 1 +WHEN SUM(rvpct) < .50 THEN 0 +END AS rating_key, +CASE WHEN SUM(rvpct) IS NULL THEN 'Not rated' +WHEN SUM(rvpct) >= .50 THEN 'Yes' +WHEN SUM(rvpct) < .50 THEN 'No' +END AS rating_class +FROM #easHydric3 +GROUP BY landunit, attributename +ORDER BY landunit +; + + + +-- SOC CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Soil Organic Carbon Stock' AS attributename, +CASE WHEN SOCSTOCK_0_30_Weighted_Average = 0 THEN 1 +WHEN SOCSTOCK_0_30_Weighted_Average > 0 AND SOCSTOCK_0_30_Weighted_Average < 10 THEN 2 +WHEN SOCSTOCK_0_30_Weighted_Average >= 10 AND SOCSTOCK_0_30_Weighted_Average < 25 THEN 3 +WHEN SOCSTOCK_0_30_Weighted_Average >= 25 AND SOCSTOCK_0_30_Weighted_Average < 50 THEN 4 +WHEN SOCSTOCK_0_30_Weighted_Average >= 50 AND SOCSTOCK_0_30_Weighted_Average < 100 THEN 5 +WHEN SOCSTOCK_0_30_Weighted_Average >= 100 THEN 6 +WHEN SOCSTOCK_0_30_Weighted_Average IS NULL THEN 7 +END AS rating_value, +CASE WHEN SOCSTOCK_0_30_Weighted_Average = 0 THEN 'None' +WHEN SOCSTOCK_0_30_Weighted_Average >0 AND SOCSTOCK_0_30_Weighted_Average < 10 THEN 'Very low' +WHEN SOCSTOCK_0_30_Weighted_Average >=10 AND SOCSTOCK_0_30_Weighted_Average < 25 THEN 'Low' +WHEN SOCSTOCK_0_30_Weighted_Average >=25 AND SOCSTOCK_0_30_Weighted_Average < 50 THEN 'Moderate' +WHEN SOCSTOCK_0_30_Weighted_Average >=50 AND SOCSTOCK_0_30_Weighted_Average < 100 THEN 'Moderately High' +WHEN SOCSTOCK_0_30_Weighted_Average >=100 THEN 'High' +WHEN SOCSTOCK_0_30_Weighted_Average IS NULL THEN 'Not rated' +END AS rating_class +FROM #SOC6 +; + +-- Aggregate Stability CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT #agg8.landunit, 'Aggregate Stability' AS attributename, +CASE WHEN LU_AGG_Weighted_Average_R <25 THEN 1 +WHEN LU_AGG_Weighted_Average_R >=25 AND LU_AGG_Weighted_Average_R <50 THEN 2 +WHEN LU_AGG_Weighted_Average_R >=50 AND LU_AGG_Weighted_Average_R <75 THEN 3 +WHEN LU_AGG_Weighted_Average_R >=75 THEN 4 +WHEN LU_AGG_Weighted_Average_R IS NULL THEN 5 +END AS rating_value, +CASE WHEN LU_AGG_Weighted_Average_R <25 THEN 'Low' +WHEN LU_AGG_Weighted_Average_R >=25 AND LU_AGG_Weighted_Average_R <50 THEN 'Moderate' +WHEN LU_AGG_Weighted_Average_R >=50 AND LU_AGG_Weighted_Average_R <75 THEN 'Moderately High' +WHEN LU_AGG_Weighted_Average_R >=75 THEN 'High' +WHEN LU_AGG_Weighted_Average_R IS NULL THEN 'Not Rated' +END AS rating_class +FROM #agg8 +; + +-- AWS CART +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT DISTINCT landunit, 'Available Water Storage' AS attributename, +CASE WHEN AWS_Weighted_Average0_150 IS NULL THEN 2 +WHEN AWS_Weighted_Average0_150 > 0 THEN 1 +WHEN AWS_Weighted_Average0_150 = 0 THEN 0 +END AS rating_value, +CASE WHEN AWS_Weighted_Average0_150 IS NULL THEN 'Not rated' +WHEN AWS_Weighted_Average0_150 > 0 THEN 'Yes' +WHEN AWS_Weighted_Average0_150 = 0 THEN 'No' +END AS rating_class +FROM #aws1 +; + + +--Air Quality +CREATE TABLE #LandunitRatingsAirQualityData ( + landunit CHAR(20), + rating_name_CS CHAR(60), + rating_value_CS INT, + rating_class_CS CHAR(60), + rating_name_OMD CHAR(60), + rating_value_OMD INT, + rating_class_OMD CHAR(60), + rating_name_HYD CHAR(60), + rating_value_HYD INT, + rating_class_HYD CHAR(60), + ) + + +INSERT INTO #LandunitRatingsAirQualityData +( + landunit, + rating_name_CS, + rating_value_CS, + rating_class_CS, + rating_name_OMD, + rating_value_OMD, + rating_class_OMD, + rating_name_HYD, + rating_value_HYD, + rating_class_HYD +) +SELECT LRC.landunit, LRC.attributename AS rating_name, LRC.rating_value, LRC.rating_class, + LRC2.attributename AS rating_name2, LRC2.rating_value AS rating_value2, LRC2.rating_class AS rating_class2, + LRC3.attributename AS rating_name3, LRC3.rating_value AS rating_value3, LRC3.rating_class AS rating_class3 +FROM #LandunitRatingsCART2 LRC +INNER JOIN #AoiAcres AS a ON a.landunit = LRC.landunit AND LRC.attributename = 'Soil Organic Carbon Stock' +INNER JOIN #LandunitRatingsCART2 LRC2 ON LRC.landunit = LRC2.landunit AND LRC2.attributename ='Organic Matter Depletion' +INNER JOIN #LandunitRatingsCART2 LRC3 ON LRC.landunit = LRC3.landunit AND LRC3.attributename ='Easements Hydric Soils' + +INSERT INTO #LandunitRatingsCART2 (landunit, attributename, rating_value, rating_class) +SELECT landunit, 'Air Quality' AS rating_name, +----------------- +----------------- class 1 +CASE WHEN (rating_value_CS = 2 AND rating_value_OMD = 5 AND rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 1 +----------------- +WHEN (rating_value_CS = 3 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 1 +----------------- +WHEN (rating_value_CS = 4 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 1 +----------------- +WHEN (rating_value_CS = 5 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 1 +----------------- +----------------- class 2 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +---------------- +WHEN (rating_value_CS = 3 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 3 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +---------------- +WHEN (rating_value_CS = 4 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 4 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 2 +---------------- +WHEN (rating_value_CS = 5 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 2 +---------------- +WHEN (rating_value_CS = 6 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 2 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 2 +----------------- class 3 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 3 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 3 +WHEN (rating_value_CS = 6 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 3 +-------------- +-------------- make class = 3 when hydric +WHEN (rating_value_HYD = 1) +THEN 3 +-------------- +-------------- else make nNOT rated +ELSE 4 +END AS rating_value, + +CASE WHEN (rating_value_CS = 2 AND rating_value_OMD = 5 AND rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 2 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 2 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 2 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +----------------- +WHEN (rating_value_CS = 3 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 3 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 3 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +----------------- +WHEN (rating_value_CS = 4 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +WHEN (rating_value_CS = 4 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +----------------- +WHEN (rating_value_CS = 5 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 'Class1' +----------------- +----------------- class 2 +WHEN (rating_value_CS = 2 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +---------------- +WHEN (rating_value_CS = 3 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 3 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +---------------- +WHEN (rating_value_CS = 4 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 4 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 4 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +---------------- +WHEN (rating_value_CS = 5 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 5 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 5 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +---------------- +WHEN (rating_value_CS = 6 AND rating_value_OMD = 5 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 6 AND rating_value_OMD = 4 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +WHEN (rating_value_CS = 6 AND rating_value_OMD = 3 and rating_value_HYD in ( 2,0)) +THEN 'Class 2' +----------------- class 3 +WHEN (rating_value_CS = 5 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 3' +WHEN (rating_value_CS = 6 AND rating_value_OMD = 2 and rating_value_HYD in ( 2,0)) +THEN 'Class 3' +WHEN (rating_value_CS = 6 AND rating_value_OMD = 1 and rating_value_HYD in ( 2,0)) +THEN 'Class 3' +-------------- +-------------- make class = 3 when hydric +WHEN (rating_value_HYD = 1) +THEN 'Class 3' +-------------- +-------------- else make nNOT rated +ELSE 'Class 4' +END AS rating_class + FROM #LandunitRatingsAirQualityData +---- For ArcMap LandUnit Rating table, also return rating_class. +SELECT LRC.landunit, LRC.attributename AS rating_name, LRC.rating_value, LRC.rating_class +FROM #LandunitRatingsCART2 LRC +INNER JOIN #AoiAcres AS a ON a.landunit = LRC.landunit +ORDER BY LRC.landunit, LRC.attributename ; + + diff --git a/chapters/EditedRMD/EditedRMD/.Rhistory b/chapters/EditedRMD/EditedRMD/.Rhistory new file mode 100644 index 0000000..e69de29 diff --git a/chapters/EditedRMD/EditedRMD/CART_Soil_Data_Access_Domains.html b/chapters/EditedRMD/EditedRMD/CART_Soil_Data_Access_Domains.html new file mode 100644 index 0000000..91c6cd5 --- /dev/null +++ b/chapters/EditedRMD/EditedRMD/CART_Soil_Data_Access_Domains.html @@ -0,0 +1,1606 @@ + + + + + + + + + + + + + + + +CART Soil Data Access Domains + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +Note: In some domains, the “Soil Interpretation Rating Class” is 0 or 1. +In these domains, one (1) indicates presence and zero (0) indicates +absence. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+Line + +CART Rating + +Attribute Name + +Soil Interpretation Rating Class +
+1 + +Surface Salt Concentration:1 + +Surface Salt Concentration + +High surface salinization risk or already saline +
+2 + +Surface Salt Concentration:2 + +Surface Salt Concentration + +Surface salinization risk +
+3 + +Surface Salt Concentration:3 + +Surface Salt Concentration + +Low surface salinization risk +
+4 + +Surface Salt Concentration:4 + +Surface Salt Concentration + +Not rated +
+5 + +Soil Susceptibility to Compaction:1 + +Soil Susceptibility to Compaction + +High +
+6 + +Soil Susceptibility to Compaction:2 + +Soil Susceptibility to Compaction + +Medium +
+7 + +Soil Susceptibility to Compaction:3 + +Soil Susceptibility to Compaction + +Low +
+8 + +Soil Susceptibility to Compaction:4 + +Soil Susceptibility to Compaction + +Not rated +
+9 + +Organic Matter Depletion:1 + +Organic Matter Depletion + +OM depletion high +
+10 + +Organic Matter Depletion:2 + +Organic Matter Depletion + +OM depletion moderately high +
+11 + +Organic Matter Depletion:3 + +Organic Matter Depletion + +OM depletion moderate +
+12 + +Organic Matter Depletion:4 + +Organic Matter Depletion + +OM depletion moderately low +
+13 + +Organic Matter Depletion:5 + +Organic Matter Depletion + +OM depletion low +
+14 + +Organic Matter Depletion:6 + +Organic Matter Depletion + +Not rated +
+15 + +Agricultural Organic Soil Subsidence:1 + +Agricultural Organic Soil Subsidence + +Severe subsidence +
+16 + +Agricultural Organic Soil Subsidence:2 + +Agricultural Organic Soil Subsidence + +Moderate subsidence +
+17 + +Agricultural Organic Soil Subsidence:3 + +Agricultural Organic Soil Subsidence + +Low subsidence +
+18 + +Agricultural Organic Soil Subsidence:4 + +Agricultural Organic Soil Subsidence + +Mineral soil +
+19 + +Agricultural Organic Soil Subsidence:5 + +Agricultural Organic Soil Subsidence + +Not rated +
+20 + +Suitability for Aerobic Soil Organisms:1 + +Suitability for Aerobic Soil Organisms + +Not favorable +
+21 + +Suitability for Aerobic Soil Organisms:2 + +Suitability for Aerobic Soil Organisms + +Somewhat favorable +
+22 + +Suitability for Aerobic Soil Organisms:3 + +Suitability for Aerobic Soil Organisms + +Very favorable +
+23 + +Suitability for Aerobic Soil Organisms:4 + +Suitability for Aerobic Soil Organisms + +Not rated +
+25 + +Ponding or Flooding:1 + +Ponding or Flooding + +1 +
+26 + +Ponding or Flooding:0 + +Ponding or Flooding + +0 +
+27 + +Ponding or Flooding:2 + +Ponding or Flooding + +Not rated +
+28 + +Drainage Class: 1 + +Drainage class + +Excessively drained +
+29 + +Drainage Class: 2 + +Drainage class + +Somewhat excessively drained +
+30 + +Drainage Class: 3 + +Drainage class + +Well drained +
+31 + +Drainage Class: 4 + +Drainage class + +Moderately well drained +
+32 + +Drainage Class: 5 + +Drainage class + +Somewhat poorly drained +
+33 + +Drainage Class: 6 + +Drainage class + +Poorly drained +
+34 + +Drainage Class: 7 + +Drainage class + +Very poorly drained +
+35 + +Drainage Class: 8 + +Drainage class + +Subaqueous +
+36 + +Drainage Class: 9 + +Drainage class + +Null +
+37 + +Available Water Storage: 0 + +Available Water Storage + +0 +
+38 + +Available Water Storage: 1 + +Available Water Storage + +1 +
+39 + +Available Water Storage: 2 + +Available Water Storage + +Not rated +
+40 + +Soil Organic Carbon Stock: 0 + +Soil Organic Carbon Stock + +None +
+41 + +Soil Organic Carbon Stock: 1 + +Soil Organic Carbon Stock + +Very Low +
+42 + +Soil Organic Carbon Stock: 2 + +Soil Organic Carbon Stock + +Low +
+43 + +Soil Organic Carbon Stock: 3 + +Soil Organic Carbon Stock + +Moderate +
+44 + +Soil Organic Carbon Stock: 4 + +Soil Organic Carbon Stock + +Moderately High +
+45 + +Soil Organic Carbon Stock: 5 + +Soil Organic Carbon Stock + +High +
+42 + +Soil Organic Carbon Stock: 6 + +Soil Organic Carbon Stock + +Not rated +
+43 + +Aggregate Stability:1 + +Aggregate Stability + +Low +
+44 + +Aggregate Stability:2 + +Aggregate Stability + +Moderate +
+45 + +Aggregate Stability:3 + +Aggregate Stability + +Moderately High +
+46 + +Aggregate Stability:4 + +Aggregate Stability + +High +
+47 + +Aggregate Stability:5 + +Aggregate Stability + +Not rated +
+48 + +Water Table: 0 + +Water Table + +0 +
+49 + +Water Table: 1 + +Water Table + +1 +
+50 + +Water Table: 2 + +Water Table + +Not rated +
+51 + +Farm Class: 1 + +Farm Class + +Null +
+52 + +Farm Class: 2 + +Farm Class + +Prime farmland +
+53 + +Farm Class: 3 + +Farm Class + +Prime farmland if +
+54 + +Farm Class: 4 + +Farm Class + +State importance +
+55 + +Farm Class: 5 + +Farm Class + +State importance if +
+56 + +Farm Class: 6 + +Farm Class + +Local importance +
+57 + +Farm Class: 7 + +Farm Class + +Local importance if +
+58 + +Farm Class: 8 + +Farm Class + +Not Prime farmland +
+59 + +Farm Class: 9 + +Farm Class + +Not rated +
+60 + +Hydric Soils:0 + +Hydric Soils + +0 +
+61 + +Hydric Soils:1 + +Hydric Soils + +1 +
+62 + +Hydric Soils:2 + +Hydric Soils + +Not rated +
+63 + +Organic Soils: 0 + +Organic and Hydric Soils + +0 +
+64 + +Organic Soils: 1 + +Organic and Hydric Soils + +1 +
+65 + +Organic Soils: 2 + +Organic and Hydric Soils + +Not rated +
+ + + + +
+ + + + + + + + + + + + + + + diff --git a/documents/FY24 CART Resource Concern Assessment.docx b/documents/FY24 CART Resource Concern Assessment.docx new file mode 100644 index 0000000000000000000000000000000000000000..acdcd035c4fe11a73013be89e76629ebf3f23517 GIT binary patch literal 833473 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 z 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/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 %gH`g`i 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

  • ?GbK)olu=aF>4k1Yi#6A$&v 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
      )u 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
      RF#P4xLrB`MgX}jcy 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
    1. 71`#A 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 z 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

        @(2IQcNO^cOh%C72gE)bV;N~oS`&g@VyA9N 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 Hodo?4TLqe> literal 0 HcmV?d00001 diff --git a/documents/~$24 CART Resource Concern Assessment.docx b/documents/~$24 CART Resource Concern Assessment.docx new file mode 100644 index 0000000000000000000000000000000000000000..bd07247e034d54172d7da30521a435ba09d1ee95 GIT binary patch literal 162 zcmdP!OU+G9PR-U)@JcMs&r{G<@C$Md22yVMMI{Q(`8he6dBr*k&i)L@K!d@LA(bH) zh?9Xhn?Z*`fx(L*k)fC&pCJ#()&*ieh9CxKhF~bq4JcE@Py*yR16eshmCs1sCEI1Xn|dV?&(1V{aYuQaVK9L+_!#F4$_x7AM2h zYLQ;TsFB6jZ5ORM&!suh7w*v^z_5};7B~n7OlYVm)IA9pp@@Iy+1aquDOG09oNT{M Q#dZBjzK^#ZpZh1^1esYJX8-^I literal 0 HcmV?d00001 diff --git a/documents/~$tomating Soils Information (SSURGO) into Conservation Planning Activities_20221114.docx b/documents/~$tomating Soils Information (SSURGO) into Conservation Planning Activities_20221114.docx new file mode 100644 index 0000000000000000000000000000000000000000..b6cd10d27b30a810dad2ab33a173a30ab5b35d3e GIT binary patch literal 162 zcmYj~Jqp7x429p+b7;)qoI>Cs1sCEI1Xn|dV?&(1V{aYuQaVK9L+_!#F4$_x7AM2h zYLQ;TsFB6jZ5ORM&!suh7w*v^z_5};7B~n7OlYVm)IA9pp@@Iy+1aquDOG09oNT{M Q#dZBjzK^#ZpZh1^1esYJX8-^I literal 0 HcmV?d00001

    2. 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