Goedendag beste leden,

Ik ben bezig met een shop echter loop ik vast op een query.

Echter als ik deze query uitvoer in Sql Server Management studio doet die het wel goed.

de query

$strItemdetailsQuery = '
        SELECT	main.name AS "mainCatName",
                sub.sid AS "subCatID",
                sub.name AS "subCatName",
                itemlist.mid,
                itemlist.itemid,
                itemlist.name,
                itemlist.description,
                itemlist.price,
                itemlist.count,
                itemlist.icon,
                itemlist.effects,
				itemlist.currency
        FROM	web_mall AS itemlist
            LEFT JOIN SHOP_CATEGORIES_SUB AS "sub" ON sub.sid = itemlist.category
            LEFT JOIN SHOP_CATEGORIES_MAIN AS "main" ON main.mid = sub.mid
        WHERE   sub.active = 1 AND main.active = 1 AND itemlist.mid = ' . $_GET['iid'] . '
        ORDER BY main.mid ASC, sub.sid ASC
    ';

$resItemdetailsQuery = $db->query($strItemdetailsQuery);
if($db->numRows($resItemdetailsQuery) > 0) {
        while($strItemDetails = $db->fetchAssoc($resItemdetailsQuery))


De laatste 2 regels gaan niet goed omdat de query al faalt.

Warning: mssql_query() [function.mssql-query]: message: Incorrect syntax near 'sub'.

Heeft iemand enig idee waar dit aan kan liggen?

Dit uitkomst als ik het plaats in SQL server management is



Toevoeging op 20/04/2014 16:45:10:

Probleem opgelost

MSSQL maakt anders gebruik van "sub" dan als ik het via PHP uitvoer.
Via php moet ik zonder "" doen dus alleen sub.
Geen regelnummer bij de foutmelding?
Het is een gokje maar volgens mij horen die double quotes er niet te staan achter iedere AS. Mijn advies is om de hele query tussen double quotes te schrijven en single quotes te gebruiken bij waarden echter is dat achter de AS niet nodig
Sommige sql-dialecten willen geen AS bij een alias.
Die " zijn vokens mij in mssql het equivalent van mysql's ````
Bedankt iedereen het was inderdaad de "" bij Sub en Main.

Reageren