for flooders
:: Главная :: Решения :: Статьи :: Сайт М. Дроздова :: Файловый архив :: Книга по VFP 9 :: Русский Help Online :: OFF-LINE Форум
   Л и с о в о д ы   в с е х   с т р а н,  о б ъ е д и н я й т е с ь !!!  

Список Форумов  :: Игры Разума
   :: Помощь сайту :: 

Re: выборка одним селектом
ssa
[Модератор]

Сообщений: 12213
Откуда: Москва
Дата: 14.11.07 21:09:30ОтветитьЦитировать
Ну-ну, очень классный аргумент - "селекты работают"! А задуматься над тем КАК работают - не судьба?
Или есть увереноность, что
INT(SUM(60*INT(vremya )+(vremya - int(vremya ))*100)/60);   
  +MOD(SUM(60*INT(vremya )+(vremya - int(vremya ))*100),60)/100 as Время
на каждую строку будет работать быстрее, чем
SUM(vremya)
с одним таким преобразованием?

------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: выборка одним селектом
Foxtrot

Сообщений: 3370
Откуда: Куда:
Дата: 15.11.07 09:56:08ОтветитьЦитировать
2 mayil
ваше упорство настораживает
возможно вам немного не хватает теории, ну и чуточку внимательности не повредит
а хранить все ж лучше данные в вашем случае в int


------------------
P.S. будете проходить мимо, не стесняйтесь, проходите
Ratings: 0 negative/0 positive

Re: выборка одним селектом
mayil
Автор

Сообщений: 277
Откуда: Гянджа, Азербайд
Дата: 15.11.07 19:14:07ОтветитьЦитировать
Добрый вечер!

Давайте, друзья, поконкретней.

Итак, некоему оператору (человеку!) надо ввести в таблицу 167 ч 35 мин.
Вы предлагаете держать эти часы-минуты в минутах в int-поле. Хорошо. Принимаем.

1) Разумеется, не оператор должен переводить 167 ч 35 мин в минуты.
2) Тогда он должен ввести и часы и минуты:
а) либо в два разных техтбокса, оттуда программно я пересчитываю в минуты и сажаю
в int-поле,
б) либо в один текстбокс но через какой-нибудь разделитель, тогда их придется
предварительно еще и расщепить ,
в) после селектов результат пеобразовать обратно в часы-минуты. Итак, с помощью
селектов я послал в курсор выборку, где суммы часы-минуты получатся в минутах и
затем должен пробежаться по итогам временных (ударение на последнем слоге!) колонок
- а их несколько.. и преобразовать их обратно в часы - минуты. Если же это последнее
вставить в сам селект, то намного ли это будет эффективнее "доморощенного" варианта?
3) У современного компа и памяти и скорости с избытком, стоит ли беспокоиться о скорости?
Это раньше нам приходилось бороться за каждую рабочую ячейку и строчку программы в
ЭВМ: М20, Минск-22, Наири и т.п.

Что касается селекта, он чрезвычайно быстр - хвала ему!. Лучше выполнить 20 селектов ,
чем заниматься преобразованиями исходной информации при входе в процесс вычислений и
при выходе из оного, т.е. от человека в машину и обратно.

Посылаю вам свою игру. Попытайтесь выиграть!

P.S. Пардон, она стоит рядом, в "Алгоритмы и программы". Её "расковыряли " до
мелочей Леонид и Игорь Королев. И королевкая программа победила мою! Пока она
сильней, но ... продолжение следует..

Удачи!
Майкл.
Ratings: 0 negative/0 positive

Re: выборка одним селектом
ssa
[Модератор]

Сообщений: 12213
Откуда: Москва
Дата: 16.11.07 15:16:03ОтветитьЦитировать
1. Ввести можно и в одно поле как 167.35
2.
Цитата:
У современного компа и памяти и скорости с избытком, стоит ли беспокоиться о скорости?
Яркий признак плохого, во всяком случае непрофессионального, программиста. Аминь.


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: выборка одним селектом
mayil
Автор

Сообщений: 277
Откуда: Гянджа, Азербайд
Дата: 17.11.07 09:02:22ОтветитьЦитировать
ssa
1. Ввести можно и в одно поле как 167.35
Аминь.

Привет!

Вернулись на круги своя...! Вы тоже пришли к выводу, что информацию можно безо всяких выкрутас вводить как смешанное число 167.35 ! А я об чем!? Об том же!
И теперь надо такие числа, как вы предлагаете с Канатом вместе, перевести в минуты (Intеger-поле) сложить и снова вернуть в такую же как и 167.35 форму. Да, просто и наглядно и, главное, разумно.

Теперь вспомним, о чем я просил.. Я просил сделать все это в одном селекте - select sum() ... from ... и т.д. А вы мне сразу клеймо ...
Я сумел сделать это, правда, можно несколько упростить, введя пользовательскую функцию вычисления дробной части - насколько я знаю , фокс таковую не имеет.

И последнее ...

Вельми понеже .. Очень серьезно прошу Вас, джентльмены, создайте таблу, заполнив пару-тройку строк с моими часы-минутами и ПОКАЖИТЕ мне, ласкаво просымо, вариант суммирования (именно селектом!), отличный от моего. Рад буду получить его..

Все тот же Майкл.
Amen!
Ratings: 0 negative/0 positive

Re: выборка одним селектом
ssa
[Модератор]

Сообщений: 12213
Откуда: Москва
Дата: 17.11.07 09:26:24ОтветитьЦитировать
В приличном обществе вопрошающий дает исчерпывающую информацию для ответа на свой вопрос или выполнения своей просьбы. А тут отвечающие еще и сами должны все придумать для вопрошающего и выложить на блюдечке. Лихо.


------------------
Лень - это неосознанная мудрость.
Ratings: 0 negative/0 positive

Re: выборка одним селектом
mayil
Автор

Сообщений: 277
Откуда: Гянджа, Азербайд
Дата: 17.11.07 14:21:31ОтветитьЦитировать
Жаль, конечно, что мы не поняли друг-друга...

Я просто хотел узнать, как все-таки реализовать ваши предложения , и всего-то, и думал, что наша беседа носит чисто профессиональный характер... и никаких амбиций!

P.S. И все-таки варианта решения этой проблемы, проще, чем у i.h.a я не вижу!
Ratings: 0 negative/0 positive



Эта тема закрыта.

On-line: 83 Penner Мадама  and Guests: 81


© 2000-2019 Fox Club 
Яндекс.Метрика