shaunk Posted March 22, 2006 Share Posted March 22, 2006 Hopefully this is easy for womeone else:-I've recently set up a database that contains a numbet of fields, say for arguments sake they are field1, field2, field3 etc....Want I want to do is make field5 equal a value of the latest value entered in field1 minus the first value entered in field1.ie: in the column field1 the first or starting entery is say 50 and as users interact with the database this value increases dependant on user input (don't worry about why) so the last value in column field1 could be say 65. I want to calculate the difference (15) and enter it into a new field.I seem to be running in to problems with a syntax or something because I've tried many combinations like the following:-<?php $firstvalue = SELECT field1 FROM databasename ORDER BY field1 ASC LIMIT 1 ;$secondvalue = SELECT field1 FROM databasename ORDER BY field1 DESC LIMIT 1 ;$valuerequired = $secondvalue - $firstvalueecho "$valuerequired" ?>Any help will be much appriciated I've run out of ideas.Thanks Shaun Quote Link to comment Share on other sites More sharing options...
obsidian Posted March 22, 2006 Share Posted March 22, 2006 you're close, but when you simply do a query, it returns a reference to the results, not the results themselves. so, you'd need to do this:[code]$first = mysql_result(mysql_query("SELECT field1 FROM tableName ORDER BY field1 ASC LIMIT 1"), 0, 'field1');$last = mysql_result(mysql_query("SELECT field1 FROM tableName ORDER BY field1 DESC LIMIT 1"), 0, 'field1');echo ($last - $first);[/code] Quote Link to comment Share on other sites More sharing options...
shaunk Posted March 22, 2006 Author Share Posted March 22, 2006 Fantastic, thanks Quote Link to comment Share on other sites More sharing options...
Barand Posted March 22, 2006 Share Posted March 22, 2006 If the values always increase you could use a single query[code]$result = mysql_query ("SELECT MIN(field1) as first, MAX(field1) as last FROM tablename");echo mysql_result($result, 0, 'last') - mysql_result($result, 0, 'first');[/code] Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.