Я использую базу данных SQL Server 2017 с проектом загрузки Spring. Не могу использовать JPA. Используя spring JDB C. У меня есть требование, по которому я могу динамически добавлять условия в запрос.
Например, в моем файле свойств уже есть запрос -
SELECT o.OrderID, c.CustomerName
FROM ECO.Orders o
INNER JOIN ECO.Customers c ON o.CustomerID = c.CustomerID
(ECO - это имя моей схемы, которое должно быть включено в запрос)
Теперь, в java мне нужно динамически добавлять условия - например. "where CustomerID = 1
"
Проблема в том, что это вызовет
jdb c .SQLServerException: неоднозначное имя столбца CustomerID
Итак, у меня чтобы добавить псевдоним к этому столбцу.
"where o.CustomerID = 1
" будет работать нормально.
Теперь мне нужно найти способ получить псевдоним из запроса.
Я пробовал следующее:
String test = query.substring(query.indexOf("FROM ECO."));
System.out.println(test);
Что дает следующий результат:
FROM ECO.Orders o
Мне просто нужно получить псевдоним таблицы отсюда. Думаю, это можно сделать с помощью регулярного выражения.