Go4Expert (http://www.go4expert.com/)
-   MySQL (http://www.go4expert.com/forums/mysql-forum/)
-   -   rewriting a MS SQL query to work with mySQL (http://www.go4expert.com/forums/rewriting-ms-sql-query-mysql-t1295/)

MySQLGEEK 29Aug2006 09:07

rewriting a MS SQL query to work with mySQL
I have a SQL query that works fine in MS SQL, but I want to be able to use this query in a mySQL database. The problem is mySQL doesn't support this type of query. MySQL doesn't support sub queries.

I've tried looking but can't seem to find out how I could perform this same thing in mysql a different way. I thougth I'd check to see if anyone might have a sugestion, or know of how to rewrite it to make it work.

Here is the SQL:
Code: SQL

SELECT categories.name AS category,
            manufacturer.name AS manufacturer,
            manufacturer.website AS website,
                 SELECT MIN(price)
                 FROM seller_item
                 WHERE product_id = product.id
            ) AS price
FROM product
         INNER JOIN cat_product_connector
             ON product.id = cat_product_connector.product_id
         INNER JOIN categories
             ON cat_product_connector.cat_id = categories.id
         INNER JOIN manufacturer
             ON product.manufacturer_id = manufacturer.id
WHERE categories.id = ?
    AND product.STATUS = 'active'
ORDER BY categories.name

My big problem is the sub select statement that I use to get the lowest price from the table that lists the multiple sellers caring that product.

I don't see how I could do this with a table join because I have to get the minimum price for each product.

I didn't want to make my application have to execute a select query for each product it gets from that query because of the overhead involved. I would have to open a second DB connection to issue the select statements finding the minimum price for each product as the program iterates through the main query listed above. Plus this query is going to be one of the most heavily executed ones, so the least overhead the better.

pete_bisby 9Apr2009 14:46

Re: rewriting a MS SQL query to work with mySQL
Unsure which version of MySQL you're using, but MySQL does support sub-queries.

If you can, upgrade to MySQL 5 - the documentation regarding sub-queries within the SELECT part of the query is allowed. (http://dev.mysql.com/doc/refman/5.0/en/subqueries.html)

All times are GMT +5.5. The time now is 21:16.