выберите * математические операции - PullRequest
5 голосов
/ 28 июня 2010

возможно ли выбрать столбцы и выполнять над ними сложные операции, например select factorial(column1) from table1 или select integral_of(something) from table2

возможно, есть библиотеки, поддерживающие такие операции?

Ответы [ 2 ]

11 голосов
/ 28 июня 2010

Да, вы можете вызывать все предопределенные функции вашей БД в выбранных столбцах, и вы можете использовать CREATE FUNCTION для определения своих собственных.

Но БД предназначены для просмотра огромных объемов данных, а не для сложных вычислений. Если вы попробуете это, вы обнаружите, что многие операции очень медленные (особенно пользовательские).

Именно поэтому большинство людей выбирают данные из базы данных, а затем выполняют сложную математику на стороне приложения. Это также упрощает тестирование и оптимизацию кода или замену его новой версией.

3 голосов
/ 28 июня 2010

Да, это так. Если нужная вам функция не встроена в вашу СУБД, вы можете написать свои собственные пользовательские функции.

Пример вы найдете здесь: http://www.15seconds.com/Issue/000817.htm.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...