quick mysql query
# November 27, 2009 at 3:45 pm
Hi, i have a table that is going to have a lot or rows, i don’t want to have to search the whole table for a value with a query i want to check what the last row added was.
So each day a new row will be added, but i want a script to check if today’s date is a new row or not so i only want to check the last entry to the table as if its not equal to today’s date then it will create a new row.
Chris# November 27, 2009 at 5:09 pm
I’d try something like this:
http://forums.mysql.com/read.php?147,189341,189341# November 28, 2009 at 7:15 am
Yeah i’m using php.
Ok. so it should go like this,
Connect to DB – Which I can do.
Check what the last row entered to the db was – it gets the last row entered and stores its value .
It then compares that value with one that has just been created by using the date function.
If they are the same everything is fine.
If they are different then it enters a new row in the table – this i should be able to do.
Chris# November 28, 2009 at 1:31 pm
Well, mysql_insert_id(); should return the ID of the last entry.
Try this:Code:< ? /*CONNECT TO DB HERE... then*/ $lastid = mysql_insert_id(); echo $lastid; ?>
Hopefully, tat will return the last… but looking at the function details again, it looks like it may only work on Queries previously run in the same DB connection.
Anyway, let me know if that works…# November 29, 2009 at 1:34 pm
This reply has been reported for inappropriate content.
You could do it with
obviously attach the value to a var, then you have the ID number of the last inserted row, without worrying about too much searching. If you have the ID you can SELECT the data from that row.# November 30, 2009 at 4:12 am
This reply has been reported for inappropriate content."AshtonSanders" wrote:Cool Rob.
Do you think you could you do something likethis?:Code:query( “SELECT * FROM table WHERE ID = (SELECT LAST_INSERT_ID())” );
Yea I suppose so – I cant see why it wouldnt work…# November 30, 2009 at 12:07 pm
I don’t know how the MySQL search mechanism works, but I doubt you’ll be able to do better than this. The biggest tax on your SQL server is the amount of information returned; not how much is searched through. And that’s only noticable if you’re returning thousands of rows of info.
SQL also has a memory function where it will remember a similar query.
I have a friend who created a CMS where every tag, attribute and value was stored separately in the database, and the page still loaded as fast as an HTML page… we have yet to test this on a hundred-visits-a-minute site, but you get the idea.
Hope that helps.
You must be logged in to reply to this topic.