2016-03-23 2 views
0

Я не могу для жизни меня видеть, что здесь происходит не так. Скорее всего, это что-то глупое, но я сейчас вслепую! У меня есть запрос:mysql - не может получить запрос к работе

SELECT 
Links.Title, 
(6371 * acos(cos(radians(43.4347229)) * cos(radians(Links.Latitude)) * cos(radians(Links.Longitude) - radians(6.737222195)) + sin(radians(43.4347229)) * sin(radians(Links.Latitude))) AS distance 
FROM CatLinks,Links WHERE CatLinks.LinkID = Links.ID AND (Links.ID IN (16650,17190,153344) AND Links.isValidated = 'Yes' AND Links.PropertyType IN (1,2,3) AND Links.priceSort <= '9999' AND Links.PropertyType IN (1,2,3) AND Links.priceSort < '9999') ORDER BY distance LIMIT 0,50 

..разработать который я получаю сообщение об ошибке:

Error: Could not execute query: Failed to execute query: 'SELECT Links.Title, (6371 * acos(cos(radians(43.4347229)) * cos(radians( Links.Latitude)) * cos(radians(Links.Longitude) - radians(6.737222195)) + sin(radians(43.4347229)) * sin(radians( Links.Latitude))) AS distance FROM CatLinks,Links WHERE CatLinks.LinkID = Links.ID AND (Links.ID IN (16650,17190,153344)) ORDER BY distance LIMIT 0,50': 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 'AS distance FROM CatLinks,Links WHERE CatLinks.LinkID =' at line 3

Даже подрезки вниз к более простому запросу, не хочет работать:

SELECT 
    glinks_Links.Title, 
    (6371 * acos(cos(radians(43.4347229)) * cos(radians(glinks_Links.Latitude)) * cos(radians(glinks_Links.Longitude) - radians(6.737222195)) + sin(radians(43.4347229)) * sin(radians(glinks_Links.Latitude))) AS distance 
    FROM glinks_CatLinks,glinks_Links ORDER BY distance LIMIT 0,50 

Я все время общался с этой проблемой, поэтому любой совет был бы очень благодарен!

ответ

3

Вы забыли закрыть кронштейн (около sin(radians(Links.Latitude))))). Попробуйте

SELECT 
    Links.Title, 
    (
     6371 * acos(
      cos(radians(43.4347229)) * cos(radians(Links.Latitude)) * cos(
       radians(Links.Longitude) - radians(6.737222195) 
      ) + sin(radians(43.4347229)) * sin(radians(Links.Latitude)) 
     ) 
    ) AS distance 
FROM 
    CatLinks, 
    Links 
WHERE 
    CatLinks.LinkID = Links.ID 
AND (
    Links.ID IN (16650, 17190, 153344) 
    AND Links.isValidated = 'Yes' 
    AND Links.PropertyType IN (1, 2, 3) 
    AND Links.priceSort <= '9999' 
    AND Links.PropertyType IN (1, 2, 3) 
    AND Links.priceSort < '9999' 
) 
ORDER BY 
    distance 
LIMIT 0,50 
+1

Да - в основном добавить закрывающую скобку перед «AS» – Bohemian

+0

Ah человек - не могу поверить, что я пропустил это! Я смотрел на запрос на хороший час! Спасибо за время сохранения - я помету ваш ответ как можно скорее, как только это позволит :) –

Смежные вопросы