Jump to content

Archived

This topic is now archived and is closed to further replies.

acer88

Help with select syntax

Recommended Posts

I get this error when trying to do a mysql query with select.

Here is the error I get:

SELECT Error: You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'select barcode from itemdescription) order by listing.date DESC

and here is the code that I believe is generating the error:

//$records = mysql_query( "SELECT *  FROM listing where title like '%$title%' and barcode in (select barcode from itemdescription) order by date DESC")
$records = mysql_query( "SELECT listing.recordid,listing.barcode,listing.itemnumber,listing.title,listing.inputdate,itemdescription.category,
category.categoryname FROM listing left join itemdescription on listing.barcode=itemdescription.barcode left join
category on itemdescription.category=category.categoryid where listing.title like '%$title%'
  and listing.barcode in (select barcode from itemdescription) order by listing.date DESC")
or die("SELECT Error: ".mysql_error());
$num_rows = mysql_num_rows($records);



what is wrong with my syntax?? Sometimes it just take another pair of eyes to spot the problem:) Thanks

Share this post


Link to post
Share on other sites
What MySQL version are you using? It looks like it's not happy with your subqueries, though there could be another syntax error there somewhere.

Share this post


Link to post
Share on other sites
our hosting is through godaddy and they are using version 4.0.24

Share this post


Link to post
Share on other sites
No subquery support until 4.1... though you could rewrite these as JOINs:

[code]SELECT *  FROM listing INNER JOIN itemdescription USING barcode WHERE listing.title like '%$title%' ORDER BY listing.date DESC[/code]

Share this post


Link to post
Share on other sites

×

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.