Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Delphi


Информационный Канал Subscribe.Ru

РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Delphi

Выпуск № 107
от 26.04.2005, 01:10

Администратор:Калашников О.А.
В номере:Вопросов: 4, Ответов: 9


Вопрос № 20006: Доброго времени суток!! как на SQL написать запрос, в котором один столбец содержал среднее значение соответствующей строки?...
Вопрос № 20011: Здравствуйте уважаемые эксперты! У меня к вам следующий вопрос: есть строка вида x,y z Причём, длина x и y может принимать значения от 0 до ..., а z может принимать значения 'B', 'KB', 'MB'. Вопрос заключается в следующем: как мне из строки в...
Вопрос № 20012: Здравствуйте уважаемые эксперты. Как нажатии на кнопку программно добавить в PageControl одну новую вкладку с названием и разместить на ней один компонент ListBox указанной ширины и как потом все это удалить? о как завернул :)...
Вопрос № 20017: У меня не один а сразу несколько вопросов: 1. Есть ли в природе бесплатные компоненты прямого доступа к БД MySQL ? И кто чем пользуется. Не очень хочеться работать через ODBC.... 2. Киньте кто нибудь пример или ссылку на толковое объяснения к...

Вопрос № 20006
Доброго времени суток!!
как на SQL написать запрос, в котором один столбец содержал среднее значение соответствующей строки?
Отправлен: 20.04.2005, 11:18
Вопрос задала: Katy (статус: 1-ый класс)
Всего ответов отправлено: 4

Отвечает: Trer
Здравствуйте, Katy!
Проще всего, наверно так:
Col_1,..., Col_n - названия столбцов по которым находится среднее;
Сol_Name - название столбца-результата;
Table_Name - имя таблицы, откуда берутся данные.

Приложение:

Ответ отправила: Trer (статус: 1-ый класс)
Отправлен: 20.04.2005, 11:49

Отвечает: Rusland
Здравствуйте, Katy!
Есть функция avg или можно использовать SUM/Count
Ответ отправил: Rusland (статус: 2-ой класс)
Отправлен: 20.04.2005, 11:52

Отвечает: Алексей Владимирович
Здравствуйте, Katy!
SELECT AVG(имя_столбца) FROM таблица WHERE ...условие...
Ответ отправил: Алексей Владимирович (статус: 7-ой класс)
Отправлен: 20.04.2005, 12:29

Отвечает: corsar
Здравствуйте, Katy!
В таблице data столбец чисел val
mysql> select val from data; //содержание столбца
+------+
| val |
+------+
| 10 |
| 20 |
| 35 |
| 50 |
+------+
4 rows in set (0.00 sec)
mysql> select avg(val) from data; //среднее значение столбца val
+----------+
| avg(val) |
+----------+
| 28.7500 |
+----------+
1 row in set (0.00 sec)
Ответ отправил: corsar (статус: 2-ой класс)
Отправлен: 20.04.2005, 18:39


Вопрос № 20011
Здравствуйте уважаемые эксперты!
У меня к вам следующий вопрос:
есть строка вида x,y z Причём, длина x и y может принимать значения от 0 до ..., а z может принимать значения 'B', 'KB', 'MB'. Вопрос заключается в следующем: как мне из строки вида x,y z получить две строки одну вида x.y а другую z Проблема в том, что разделителем между x и y является запятая, а мне нужна точка, а разделителем между x,y и z является пробел. Я пишу следующий код (см приложение), а функция Pos всё время возвращает нуль, хотя я АБСОЛЮТНО уверен (строку вида x,y z я беру из Edit'a), что должен возвращаться номер позиции искомого символа в строке. Подскажите в чём моя ошибка, почему код в приложении не работает (он всё время возвращает туже строку, которая и была в начале!)?? Может быть есть какой-то другой способ решения данной проблемы??
Заранее благодарен за все ответы!!!

Приложение:

Отправлен: 20.04.2005, 13:10
Вопрос задал: Подковырин Андрей Вадимович (статус: Посетитель)
Всего ответов отправлено: 2

Отвечает: Trer
Здравствуйте, Подковырин Андрей Вадимович!
1 - у функции Pos аргументы идут в таком порядке:
1) что ищем
2) где ищем
т.е. в Вашем случае должно быть Pos(',',sIn), а не Pos(sIn, ',').
по аналогии остальные Pos
2 - в процедуре Insert тоже нужно поменять местами два первых аргумента.
3 - для замены подстроки или символа в строке можно использовать функции
AnsiReplaceStr и ReplaceStr.
Ответ отправила: Trer (статус: 1-ый класс)
Отправлен: 20.04.2005, 14:21

Отвечает: corsar
Здравствуйте, Подковырин Андрей Вадимович!
var S,St : string;p : integer;
begin
S:=Edit1.Text; //S="123,456 MB"
p:=Pos(',',S);
if p<>0 then S[p]:='.'; //S="123.456 MB"
p:=Pos('B',S); //Находим букву B и анализуруем букву перед B
case S[p-1] of
'K' : begin St:='KB';p:=p-3;end;
'M' : begin St:='MB';p:=p-3;end;
else begin St:='B';p:=p-2;end;
end;
S:=Copy(S,1,p);//Берем из строки часть x.y
Edit2.Text:=S;
Edit3.Text:=St;
end;
Ответ отправил: corsar (статус: 2-ой класс)
Отправлен: 20.04.2005, 18:28


Вопрос № 20012
Здравствуйте уважаемые эксперты.
Как нажатии на кнопку программно добавить в PageControl одну новую вкладку с названием и разместить на ней один компонент ListBox указанной ширины и как потом все это удалить?
о как завернул :)
Отправлен: 20.04.2005, 13:23
Вопрос задал: source (статус: Посетитель)
Всего ответов отправлено: 1

Отвечает: corsar
Здравствуйте, source!
procedure TForm1.ButNewPageClick(Sender: TObject);
var Sheet : TTabSheet;
List : TListBox;
begin
Sheet:=TTabSheet.Create(Self);
Sheet.PageControl:=PageControl1; //вставляем закладку
Sheet.Caption:=IntToStr(PageControl1.PageCount);
List:=TListBox.Create(Self); //вставляем ListBox
List.Parent:=Sheet;
List.Left:=10;
List.Top:=10;
List.Width:=Sheet.Width-20;
List.Height:=Sheet.Height-20;
end;
procedure TForm1.ButCloseActivePageClick(Sender: TObject);
begin
if PageControl1.ActivePage<>nil then
PageControl1.ActivePage.Free; //Закрываем активную страницу
end;
если в TabSheet'e свойству PageControl присвоить nil, то закладка будет скрыта но из памяти стерта не будет. В дальнейшем ее можно будет снова показать.
procedure TForm1.ButCloseClick(Sender: TObject);
var Sheet : TTabSheet;
begin
Sheet:=TTabSheet(TButton(Sender).Parent);
Sheet.PageControl:=nil;
end;
Ответ отправил: corsar (статус: 2-ой класс)
Отправлен: 20.04.2005, 17:38
Оценка за ответ: 5
Комментарий оценки:
Пасиб большое


Вопрос № 20017
У меня не один а сразу несколько вопросов:
1. Есть ли в природе бесплатные компоненты прямого доступа к БД MySQL ? И кто чем пользуется. Не очень хочеться работать через ODBC....
2. Киньте кто нибудь пример или ссылку на толковое объяснения как под Дельфями работать c xml-файлами
3. Где можно взять такие toolBar'ы как например у Corel которые в любое место формы перетаскиваются без проблем ? Я понимаю, что Torry.net никто не отменял, но может кто-то пользовался скажет конкретное название и источник
:-)
Заранее спасибо всем ответившим экспертам...
Отправлен: 20.04.2005, 15:40
Вопрос задал: Sniffer (статус: Студент)
Всего ответов отправлено: 2

Отвечает: Trer
Здравствуйте, Sniffer!
1. Посмотри:
http://sourceforge.net/projects/zeoslib/ - набор компонент от Zeos
Ответ отправила: Trer (статус: 1-ый класс)
Отправлен: 20.04.2005, 16:48

Отвечает: Алексей Владимирович
Здравствуйте, Sniffer!
1. ZeosDBO -- http://sourceforge.net/projects/zeoslib/
Ответ отправил: Алексей Владимирович (статус: 7-ой класс)
Отправлен: 20.04.2005, 17:14


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2005, RusFAQ.ru, Россия, Москва. Все права защищены.
Идея, дизайн, программирование, авторское право: Калашников О.А.


http://subscribe.ru/
http://subscribe.ru/feedback/
Подписан адрес:
Код этой рассылки: comp.soft.prog.delphiplus
Отписаться

В избранное