2015-06-12 1 views
0

Statement stmt = conn.createStatement();Вложенный SQL ошибка запроса в Java

sql = "SELECT P1, P2 FROM " + "(SELECT (3959 * acos(cos(radians(T2.origin_lat)) * cos(radians(T1.origin_lat)) * cos(radians(T1.origin_lon) - radians(T2.origin_lon)) + sin(radians(T2.origin_lat)) * sin(radians(T1.origin_lat)))) " + "as dis," + "T1.id as P1,T2.id as P2 FROM public.dummy T1 CROSS JOIN public.dummy T2 " + "where P1 != P2) res" + "where res.dis<=.05 order by P1";

ResultSet rs = stmt.executeQuery(sql);

получаю эту ошибку

org.postgresql.util.PSQLException: ERROR: syntax error at or near "res" Position: 326

PS - То же запрос работает в MySQL. Влияет ли такое вид создания в java? Какие изменения я должен сделать? Благодаря

ответ

2

P2) рес "+", где

Я не специалист, но как насчет сдачи пространства? :)

+0

Довольно распространенная ошибка «SQL в коде» до такой степени, что это первое, что я ищу, когда я это делаю. – mcraen

+0

О да .. Спасибо за быстрый ответ и извините за этот глупый вопрос – Shubham

+0

Является ли мое решение правильным? Я потратил целый день на это, забыв искать место :) –

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