Филосовский вопрос | |
---|---|
alex; Сообщений: 3406 Откуда: Москва Дата регистрации: 23.11.2004 |
Является ли SQL-запрос алгоритмом?
![]() |
Re: Филосовский вопрос | |
---|---|
PaulWist Сообщений: 14741 Дата регистрации: 01.04.2004 |
Нет.
Это просто декларация, а-ля хочу получить то-то и то-то из этого и этого. А вот план запроса уже является алгоритмом, те как, с помощью каких методов-инструкций получить искомое. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) ![]() |
Re: Филосовский вопрос | |
---|---|
_vit Автор Сообщений: 5243 Дата регистрации: 29.07.2002 |
Однако сложные запросы могут содержать алгоритмы.
![]() |
Re: Филосовский вопрос | |
---|---|
PaulWist Сообщений: 14741 Дата регистрации: 01.04.2004 |
Например? Если имеются в виду хинты, то это уже диалект конкретной реализации SQL, к самому языку запросов не относящийся. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) Исправлено 1 раз(а). Последнее : PaulWist, 26.05.24 18:09 ![]() |
Re: Филосовский вопрос | |
---|---|
sphinx Сообщений: 31893 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Наверное, подразумевался вызов UDF в SELECTe...
![]() ------------------ "Veni, vidi, vici!"(с) ![]() |
Re: Филосовский вопрос | |
---|---|
alex; Сообщений: 3406 Откуда: Москва Дата регистрации: 23.11.2004 |
Наверно, ключём к ответу будет фраза
"алгоритм вычисления арифметического выражения". Т.е. арифметическое выражение не является алгоритмом. Видимо, так же и SQL запрос. ![]() |
Re: Филосовский вопрос | |
---|---|
sphinx Сообщений: 31893 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Наверное точнее так сказать - на SQL нельзя написать полноценную программу (а программа и есть реализованный алгоритм), он предназначен только для взаимодействия с базами данных.
------------------ "Veni, vidi, vici!"(с) ![]() |
Re: Филосовский вопрос | |
---|---|
alex; Сообщений: 3406 Откуда: Москва Дата регистрации: 23.11.2004 |
SQL-запрос - это полноценная программа. На том же фоксе можно скомпилировать и выполнить. Алгоритм - это последовательность действий, направленных на получение определённого результата за конечное число шагов. "Вылонить запрос 'select 1'" - алгоритм. P.S. Все равно select - выбрать - действие Вопрос остается открытым. P.S.2 В тоже время на языке арифметики, арифметическое выражение, однозначно, описывает последовательность действий. Исправлено 4 раз(а). Последнее : alex;, 26.05.24 23:28 ![]() |
Re: Филосовский вопрос | |
---|---|
sphinx Сообщений: 31893 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Напиши программу на SQL по, например, оптимизации расчета раскроя листа. Без вызова процедур/циклов/ветвления. Только чистым SQL.
------------------ "Veni, vidi, vici!"(с) ![]() |
Re: Филосовский вопрос | |
---|---|
alex; Сообщений: 3406 Откуда: Москва Дата регистрации: 23.11.2004 |
В тоже время на языке арифметики, арифметическое выражение, однозначно, описывает последовательность действий, т.е. алгоритм. Напиши программу по оптимизации расчета раскроя листа на языке арифметики. Нет. SQL-запрос не алгоритм. Поскольку описывает желаемый результат, а не последовательность действий. Исправлено 1 раз(а). Последнее : alex;, 27.05.24 00:06 ![]() |
Re: Филосовский вопрос | |
---|---|
pasha_usue Сообщений: 3716 Откуда: Е-бург Дата регистрации: 06.10.2006 |
Если по определению алгоритма следовать, то это такой набор запросов, который содержит "последовательность действий". Например, сложить что-то во временную таблицу, а потом из неё уже что-то получить это как-раз последовательность. ![]() |
Re: Филосовский вопрос | |
---|---|
alex; Сообщений: 3406 Откуда: Москва Дата регистрации: 23.11.2004 |
И в конечном итоге, желаемый результат можно получить, используя разные алгоритмы. ![]() |
Re: Филосовский вопрос | |
---|---|
PaulWist Сообщений: 14741 Дата регистрации: 01.04.2004 |
Это уже не запрос, это batch/скрипт/программа, а программа - это чистяк алгоритм. ------------------ Есть многое на свете, друг Горацио... Что и не снилось нашим мудрецам. (В.Шекспир Гамлет) Исправлено 1 раз(а). Последнее : PaulWist, 27.05.24 14:40 ![]() |
Re: Филосовский вопрос | |
---|---|
_vit Автор Сообщений: 5243 Дата регистрации: 29.07.2002 |
Вообще - запрос не однозначное понятие.
Его используют имея в виду как комманду (элемент языка) так и скрипт. Но даже если иметь в виду запрос как элемент языка то как тогда с WHILE, IF...ELSE и подзапросами? ![]() |
Re: Филосовский вопрос | |
---|---|
leonid Сообщений: 3227 Откуда: Рига Дата регистрации: 03.02.2006 |
WHILE, IF...ELSE не относятся к декларативному языку SQL, они относятся к процедурному языку SQL PL. www.ibm.com ![]() |
Re: Филосовский вопрос | |
---|---|
alex; Сообщений: 3406 Откуда: Москва Дата регистрации: 23.11.2004 |
Не только SQL PL еще T-SQL и PgSQL ![]() |
Re: Филосовский вопрос | |
---|---|
_vit Автор Сообщений: 5243 Дата регистрации: 29.07.2002 |
Ок. Я принял ваши аргументы.
![]() Ради интереса я помучал Copilot на эту тему. Он долго сопротивлялся но в итоге согласился на ничью. ![]() Цитата: ![]() |
Re: Филосовский вопрос | |
---|---|
alex; Сообщений: 3406 Откуда: Москва Дата регистрации: 23.11.2004 |
Vit,
а что на фэйсбуке в форуме VFP обсуждают, не следишь? А то у нас недоступен вредный сайт. ![]() |
Re: Филосовский вопрос | |
---|---|
_vit Автор Сообщений: 5243 Дата регистрации: 29.07.2002 |
Не пользуюсь фейсбуком. Хотя видимо придется.
![]() |
Re: Филосовский вопрос | |
---|---|
alex; Сообщений: 3406 Откуда: Москва Дата регистрации: 23.11.2004 |
Помучал DeepSeek R1
Исправлено 4 раз(а). Последнее : alex;, 29.01.25 17:09 ![]() |
© 2000-2025 Fox Club  |