I had approximately the same problem : in fact, i want to place points and to style them according to "RSCP" (it is a row in my DB) : i solved the problem thanks to Filter function of SLD : here my SLD file :
king:mesures2
Default Point
A sample style that draws a point
rule1
BLue Square
<ogc:Filter>
<ogc:PropertyIsLessThan>
<ogc:PropertyName>rscp</ogc:PropertyName>
<ogc:Literal>0</ogc:Literal>
</ogc:PropertyIsLessThan>
</ogc:Filter>
<PointSymbolizer>
<Graphic>
<Mark>
<WellKnownName>square</WellKnownName>
<Fill>
<CssParameter name="fill">#0000FF</CssParameter>
</Fill>
</Mark>
<Size>6</Size>
</Graphic>
</PointSymbolizer>
</Rule>
rule2
Gold Square
<ogc:Filter>
<ogc:PropertyIsBetween>
<ogc:PropertyName>rscp</ogc:PropertyName>
<ogc:LowerBoundary>
<ogc:Literal>0</ogc:Literal>
</ogc:LowerBoundary>
<ogc:UpperBoundary>
<ogc:Literal>11</ogc:Literal>
</ogc:UpperBoundary>
</ogc:PropertyIsBetween>
</ogc:Filter>
<PointSymbolizer>
<Graphic>
<Mark>
<WellKnownName>square</WellKnownName>
<Fill>
<CssParameter name="fill">#FFD700</CssParameter>
</Fill>
</Mark>
<Size>6</Size>
</Graphic>
</PointSymbolizer>
</Rule>
<Rule>
<Name>rule3</Name>
<Title>Red Square</Title>
<ogc:Filter>
<ogc:PropertyIsBetween>
<ogc:PropertyName>rscp</ogc:PropertyName>
<ogc:LowerBoundary>
<ogc:Literal>11</ogc:Literal>
</ogc:LowerBoundary>
<ogc:UpperBoundary>
<ogc:Literal>21</ogc:Literal>
</ogc:UpperBoundary>
</ogc:PropertyIsBetween>
</ogc:Filter>
<PointSymbolizer>
<Graphic>
<Mark>
<WellKnownName>square</WellKnownName>
<Fill>
<CssParameter name="fill">#FF0000</CssParameter>
</Fill>
</Mark>
<Size>6</Size>
</Graphic>
</PointSymbolizer>
</Rule>
rule3
Red Square
<ogc:Filter>
<ogc:PropertyIsGreaterThan>
<ogc:PropertyName>rscp</ogc:PropertyName>
<ogc:Literal>21</ogc:Literal>
</ogc:PropertyIsGreaterThan>
</ogc:Filter>
<PointSymbolizer>
<Graphic>
<Mark>
<WellKnownName>square</WellKnownName>
<Fill>
<CssParameter name="fill">#00FF00</CssParameter>
</Fill>
</Mark>
<Size>6</Size>
</Graphic>
</PointSymbolizer>
</Rule>
</FeatureTypeStyle>
</UserStyle>