Консультация № 199546
07.11.2020, 12:26
0.00 руб.
0 1 1
Здравствуйте, уважаемые эксперты! У меня возникли сложности с задачей:

Дана таблица numbers, состоящая из одного поля n (тип данных int), заполненного числами от 1 до n. (можно взять n = 10000, но запрос должен работать и для 11000).
Необходимо одним запросом вывести из таблицы numbers числа, которые являются простыми.(Теорему Вильсона использовать нельзя)

Обсуждение

давно
Старший Модератор
312929
1973
12.11.2020, 08:38
общий
это ответ
Здравствуйте, Анна!

Например, так:[code lang=sql]SELECT n FROM (SELECT n1.n, MAX(n2.n) AS m FROM numbers AS n1 JOIN numbers AS n2 ON (n1.n>=n2.n*n2.n AND n1.n%n2.n=0) GROUP BY n1.n) WHERE m=1[/code]
(полагаю, вложенный запрос не считается за два отдельных).
5
Спасибо!
Форма ответа