Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Простые числа на MySQL
Форумы портала PHP.SU » PHP » Напишите за меня, пожалуйста » Простые числа на MySQL

Страниц (1): [1]
 

1. koreshs - 22 Декабря, 2009 - 15:56:13 - перейти к сообщению
В написании этой темы уважительного у меня мало, ПОЖАЛУЙСТА простите.
Свой пример не покажу, в чем проблема, и что делал, ни чего не напишу.

Задачка: Вывести одним запросом MySQL простые числа от 0 до 100.

Практиковался в выражениях с таблицами и сложными запросами.
А вот просто вывести порядок не смогу. И интернет не помог.

Очень интересно для себя. Может и вам интересно будет.
Ниндзя
2. Ch_chov - 22 Декабря, 2009 - 16:18:29 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97
3. koreshs - 22 Декабря, 2009 - 20:48:04 - перейти к сообщению
Радость
хи хи
а по серьезному?
(Добавление)
Фишка в том что условие засунуть. мона.
интересуюсь как просто в SELECT запросить вывод от 0 до 100 (100 строчек)
4. Carzil - 22 Декабря, 2009 - 21:12:34 - перейти к сообщению

Так можно вывести результаты с 0 до 100.
5. koreshs - 23 Декабря, 2009 - 13:06:06 - перейти к сообщению
да нет. лимит помойму применяется для ограничения.

нужно чтобы вывелось так!


я же не смогу написать так?!
CODE (text):
скопировать код в буфер обмена
  1. select $col++ limit 0, 100
6. EuGen - 23 Декабря, 2009 - 13:09:57 - перейти к сообщению
Потому что запрос исполняется СУБД, а не Вашим скриптом
7. koreshs - 23 Декабря, 2009 - 13:10:42 - перейти к сообщению
всмысле
CODE (text):
скопировать код в буфер обмена
  1. select @col++ limit 0, 100;

(Добавление)
Конечно СУБД
но если написать
SELCECT 23 выведет 23
если написать 2+3 выведет 5
а как вывести от 0 до 100
(Добавление)
.
Может есть какая то виртуальная таблица которая везде одинаковая и безконечная. или
команда повторять вывод.
8. valenok - 23 Декабря, 2009 - 13:56:48 - перейти к сообщению
google -> mysql loop
9. koreshs - 23 Декабря, 2009 - 14:18:12 - перейти к сообщению
спасибо большое, но это из тем процедур
а я имею ввиду одним селектом.
вложения мона.

А то создай переменную, потом положи ее в цикл.
потом еще цикл потом две проверки. присвоение.
и выводи на экран.
.
а так чтоб все в одном было.!!!!!!!!!!!
10. koreshs - 23 Декабря, 2009 - 17:36:05 - перейти к сообщению
Товарисчи прошу на суд.
кое-что состряпал
CODE (text):
скопировать код в буфер обмена
  1. select ID from (
  2.   select ins.id as ins, outs.id as outs ,@v:=@v+1 as ID, sum(outs.id%ins.id=0) as OI
  3.     FROM
  4.       (select @v:=0) as v,
  5.       (SELECT @i:=@i+1 as ID FROM bases.test, (select @i:=0) as f  limit 100) as ins
  6.     left JOIN
  7.       (SELECT @c:=@c+1 as ID FROM bases.test, (select @c:=0) as f  limit 100) as outs
  8.   ON 1=1
  9.   group by outs.id ) as ID
  10. where OI<3;

Это не совсем что я хотел.
Сдесь используется одна таблица. любого содержимого с кол-вом строк большего ста.
Колонки и значения не применяются
.
Так как сделать чтоб вообще не применялась таблица?
(Добавление)
.
И предложения по упрощению кода.
Пожалуйста
11. Nestor - 23 Декабря, 2009 - 18:00:30 - перейти к сообщению
SELECT * FROM table WHERE id < 101
12. Champion - 23 Декабря, 2009 - 18:08:32 - перейти к сообщению
В твоем задании написано: простые числа. Не заню, как в MySQL, но там где я знаю, простым селектом это не делается. Если только из хранимой процедуры, которую можно сначала написать.
(Добавление)
Хотя, знаю:
select 1 union select 2 union select 3 union select 5 union select 7 ...
Вот тебе в столбик. Pyb. еще как это сделать, имея таблицу с числами от 1 до 100. Ксатти, запросик не такой большой получится
13. koreshs - 24 Декабря, 2009 - 10:16:42 - перейти к сообщению
Nestor пишет:
SELECT * FROM table WHERE id < 101

Вот что наверно имелось ввиду.
Но дело в том как у меня оказалось в тестовой таблице колонка ID начиналась не с 0 а с 500 значения.
потому id<100 не подходит

 

Powered by ExBB FM 1.0 RC1