действительно ли возможно выбрать colums и сделать сложные операции на них, например, select factorial(column1) from table1
или select integral_of(something) from table2
возможно, существуют библиотеки, которые поддерживают такие операции?
Да, вы можете вызывать все предопределенные функции вашей БД для выбранных столбцов, и вы можете использовать CREATE FUNCTION
, чтобы определить свои собственные.
Но БД предназначены для обработки огромных объемов данных, а не для выполнения сложных вычислений с ними. Если вы попробуете это сделать, вы обнаружите, что многие операции ужасно медленные (особенно те, которые определены пользователем).
Вот почему большинство людей извлекают данные из базы данных, а затем выполняют сложные математические операции на стороне приложения. Это также упрощает тестирование и оптимизацию кода или замену его новой версией.
Да, это так. Если нужная функция не встроена в вашу СУБД, вы можете написать свои собственные определяемые пользователем функции.
Вы найдете здесь пример: http://www.15seconds.com/Issue/000817.htm .