Welcome aboard Brandie, you might back up a step and consider a couple things.
First (you probably already know) this will require some sort of automation with mod_rewrite. You put the URL's in your page output and rewrite them to your script, like
^/12345/first-street/san-diego$ /listing.php [L,NC]
(That's a poor example, but to give you the gist)
So your links will all output as
<a href="/12345/first-street/san-diego/">12345 First Street San Diego</a>
How do you "get" to those links? You could try some preg_replace() wizardry to take the title and add dashes, convert it all to lower case, but then you have to be cautions of users who may mess up your plan by adding stuff like quotes, commas, and sales pitch verbiage like
12345 First Street San Diego "CUTEST COTTAGE EVER", LOOK!
Honestly, I've done that, it's more trouble than it's worth. It's so much easier to add another field to your database specifically for the URL that you can control by only allowing letters and numbers into it, and substituting spaces for dashes. This makes it easier to maintain, easier to control, and you get far fewer surprises.
That's really "half the battle" and once you arrive there, you won't have to use hard-coded rewrites like my example, you should arrive at some sort of one-liner scheme - for example, if you decide there is no real "listings" directory, and any request for a "listings" directory will write to your script, you could do sometihng like
RewriteRule ^listings(.*) /listings.php?uri=$1 [L,NC]
Then in listings.php, you'd parse out the url parameter to search your DB for a matching url field.
Two things (among many, these are just on top) are important to remember about this approach.
The first is that your browser will still "think" you're in the listing directory. So any relative references to images or css won't work.
[domain root]
/listing-images
listings.php
<img src="listing-images/123456.jpg" alt="1234 First Street San Diego">
... because not only is there no "listings" directory, there certainly is no "listings/listing-images" directory.
This is really easily fixed (and is a common problem many encounter) by using a root relative path for all images, CSS, flash, Javascript - everything.
<img src="/listing-images/123456.jpg" alt="12345 First Street San Diego">
<link rel="stylesheet" type="text/css" href="/mycss.css">
The leading slash means "start at the domain root and follow this path" and will work from everywhere in your file system.
The second is if you already have some of these listings indexed, it's really important to understand and include 301 redirects in your .htaccess for the old query string URL's as soon as you start doing this, and to make sure the old ones are no longer accessible. Often called "duplicate content penalty," it's not really a "penalty" per se, it's that the search engines see two versions of the same page and divide the strength between them.