<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Where clause using result of expression in Python Questions</title>
    <link>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630996#M49122</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Your solution would work, but I need to develop a where clause to select an individual county.. here's my outline:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;inCnty = "flcounties.shp"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;inHos= "flhospit.shp"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;arcpy.MakeFeatureLayer_management(inHos, "hospitals_FL", "POP2000 &amp;gt; 1000000")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;# make a featurelayer for flhospit&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;arcpy.MakeFeatureLayer_management(inCnty, "county_FL")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;# make a featurelayer for flcounties&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;popFld = "POP2000"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;delimitedName = arcpy.AddFieldDelimiters(inCnty, popFld)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;where = delimitedName + "&amp;gt;1000000"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;rows = arcpy.SearchCursor(inCnty, where)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;row = rows.next()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while row :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # build a new where clause to get single county with pop 1M+ - this is where I'm stuck&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # use&amp;nbsp; SelectLayerByAttribute_management for the single county from the county featurelayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # use SelectLayerByLocation_management to select out the hospitals within the single county&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # copy the selection as a new feature class (may be a temporary one)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # use a new search cursor to the new feature class, loop through and get the count of hospitals&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; row = rows.next()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;del row&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;del rows&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sat, 05 Nov 2011 13:15:36 GMT</pubDate>
    <dc:creator>SarahFranklin</dc:creator>
    <dc:date>2011-11-05T13:15:36Z</dc:date>
    <item>
      <title>Where clause using result of expression</title>
      <link>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630994#M49120</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;I am trying to write a python program using a "counties.shp" shapefile and a "hospitals.shape" shapefile. I need to find out which counties have more than one million population in 2000 and for the counties with more than one million people in 2000, find out how many hospitals are within each county.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;Counties.shp has a field called POP2000 that lists the county's population&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;Hospitals.shp has a field called COUNTY that lists the county the hospital is found in.&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;I was able to do the first part by:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;def findpop():&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; rows = arcpy.SearchCursor("counties.shp")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; row = rows.next()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; popFld = "POP2000"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; while row:&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ctyPop = row.getValue(popFld)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if ctyPop &amp;gt; 999999 :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ctyName = row.NAME&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; #print "County: ", ctyName, "\tPopulation: ", ctyPop&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ctylst.append(ctyName)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; row = rows.next()&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;but I am having trouble with the WHERE clause on the second part. I need to use the identified counties from the first operation for the next one. This is what I've come up with, but after making quite a mess of it, I'm of ideas.. can someone help?&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;SO say, County1 and County2 had more than 1 million people&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;I need to find out how many hospitals are in County 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;and how many are in County 2&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;ctyFld = "COUNTY"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;where = ctyFld = ctylst&lt;I&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;rows = arcpy.SearchCursor("hospital.shp, where")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;row = rows.next()&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;hospTotal = 0&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;i = 0&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while row :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; ctychck = ctylist&lt;I&gt;&lt;/I&gt;&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; where "&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; hospTotal += 1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; i+=1&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; row = rows.next()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;print hospTotal&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 01 Nov 2011 23:19:34 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630994#M49120</guid>
      <dc:creator>SarahFranklin</dc:creator>
      <dc:date>2011-11-01T23:19:34Z</dc:date>
    </item>
    <item>
      <title>Re: Where clause using result of expression</title>
      <link>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630995#M49121</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You could accomplish this by performing a spatial search rather than an attribute.&amp;nbsp; Try using the 'SelectLayerByLocation_management' function to do this.&amp;nbsp; Here is an example:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy
from arcpy import env
env.workspace = r"C:\temp\python\test.gdb"
env.overwriteOutput = True

county = "Counties"
hospitals = "Hospitals"

# Create feature layers for the selection
arcpy.MakeFeatureLayer_management(county, "county_FL", "POP2000 &amp;gt; 999999")
arcpy.MakeFeatureLayer_management(hospitals, "hospitals_FL")

# Find all hospitals within counties with a population &amp;gt;= 1,000,000
arcpy.SelectLayerByLocation_management("hospitals_FL", "INTERSECT", "county_FL")

# Create a feature class from the selection
arcpy.CopyFeatures_management("hospitals_FL", "hospitals_selection")&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:50:49 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630995#M49121</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2021-12-12T02:50:49Z</dc:date>
    </item>
    <item>
      <title>Re: Where clause using result of expression</title>
      <link>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630996#M49122</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;Your solution would work, but I need to develop a where clause to select an individual county.. here's my outline:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;SPAN&gt;inCnty = "flcounties.shp"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;inHos= "flhospit.shp"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;arcpy.MakeFeatureLayer_management(inHos, "hospitals_FL", "POP2000 &amp;gt; 1000000")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;# make a featurelayer for flhospit&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;arcpy.MakeFeatureLayer_management(inCnty, "county_FL")&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;# make a featurelayer for flcounties&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;popFld = "POP2000"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;delimitedName = arcpy.AddFieldDelimiters(inCnty, popFld)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;where = delimitedName + "&amp;gt;1000000"&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;rows = arcpy.SearchCursor(inCnty, where)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;row = rows.next()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;while row :&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # build a new where clause to get single county with pop 1M+ - this is where I'm stuck&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # use&amp;nbsp; SelectLayerByAttribute_management for the single county from the county featurelayer&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # use SelectLayerByLocation_management to select out the hospitals within the single county&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # copy the selection as a new feature class (may be a temporary one)&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; # use a new search cursor to the new feature class, loop through and get the count of hospitals&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; row = rows.next()&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;del row&lt;/SPAN&gt;&lt;BR /&gt;&lt;SPAN&gt;del rows&lt;/SPAN&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sat, 05 Nov 2011 13:15:36 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630996#M49122</guid>
      <dc:creator>SarahFranklin</dc:creator>
      <dc:date>2011-11-05T13:15:36Z</dc:date>
    </item>
    <item>
      <title>Re: Where clause using result of expression</title>
      <link>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630997#M49123</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;SPAN&gt;You can create another feature layer with the 'where' clause to select the individual county:&lt;/SPAN&gt;&lt;BR /&gt;&lt;BR /&gt;&lt;PRE class="lia-code-sample line-numbers language-none"&gt;import arcpy
from arcpy import env
env.workspace = r"C:\temp\python\test.gdb"
env.overwriteOutput = True

county = "Counties"
hospitals = "Hospitals"

# Create feature layers for the selection
arcpy.MakeFeatureLayer_management(county, "county_FL", "POP2000 &amp;gt; 999999")
&lt;STRONG&gt;arcpy.MakeFeatureLayer_management("county_FL", "county_FL2", "NAME = 'CHESTER'")&lt;/STRONG&gt;
arcpy.MakeFeatureLayer_management(hospitals, "hospitals_FL")

# Find all hospitals within counties with a population &amp;gt;= 1,000,000
arcpy.SelectLayerByLocation_management("hospitals_FL", "INTERSECT", "&lt;STRONG&gt;county_FL2&lt;/STRONG&gt;")

# Create a feature class from the selection
arcpy.CopyFeatures_management("hospitals_FL", "hospitals_selection")&lt;/PRE&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 12 Dec 2021 02:50:51 GMT</pubDate>
      <guid>https://community.esri.com/t5/python-questions/where-clause-using-result-of-expression/m-p/630997#M49123</guid>
      <dc:creator>JakeSkinner</dc:creator>
      <dc:date>2021-12-12T02:50:51Z</dc:date>
    </item>
  </channel>
</rss>

