Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Составление запроса [D6]


Руслан56 ©   (2006-12-25 07:34:00) 

Здраствуйте !!!

Как составить запрос ?

Вывод суммы общего количества ячеек с одинаковым числом,
Вывод суммы всех ячеек,
Вывод суммы ((всего ячеек)-(Сумма ощего кол-ва ячеек с определенным числом)


Pa5ha   (2006-12-25 17:52:00) [1]

Sergey13 ©, не, так получилось ) Просто завтра сдавать нада, поэтому я написал вопрос и продолжил искать на него ответ.
Короче все разжучил.


Sergey13   (2006-12-25 16:52:00) [2]

> [15] Pa5ha ©   (25.12.06 16:49)

Ты в этой ветке решил дневник вести?


Pa5ha   (2006-12-25 16:49:00) [3]

Во, выловил кажеца. Ошбика возникает от :INTTREATMENTSETID;
Получается, что чтоб передать айди в процедуру текущей выделенной записи надо этот самый айди передавать через параметр?


Pa5ha   (2006-12-25 16:42:00) [4]

SET TERM ^ ;

/* Инкремент счетчика проведенных процедур */
CREATE PROCEDURE inc_treatmentvisit
AS
DECLARE VARIABLE cnt INTEGER ;
BEGIN
  SELECT COUNT(*)
  FROM TBLTRATMENTVISIT, TBLTREATMENTSET
  WHERE TBLTRATMENTVISIT.INTTREATMENTSETID = TBLTREATMENTSET.INTTREATMENTSETID
  INTO :cnt;

  UPDATE TBLTREATMENTSET
  SET INTTREATMENTSETCOUNTFACT = :cnt
  WHERE INTTREATMENTSETID = :INTTREATMENTSETID;
END ^

SET TERM ; ^

типа переделал немного, все баги отловил в запросе и в конце опять вылезла эта бага. Что она значит та?


Pa5ha   (2006-12-25 15:57:00) [5]


SET TERM ^ ;

/* Инкремент счетчика проведенных процедур */
CREATE PROCEDURE inc_treatmentvisit
AS
DECLARE VARIABLE cnt INTEGER ;
BEGIN
 FOR
   SELECT INTTREATMENTSETCOUNTFACT
   FROM TBLTREATMENTSET
   WHERE INTTREATMENTSETID = :INTTREATMENTSETID
   INTO :cnt
 DO
 BEGIN
   cnt = cnt + 1;
   UPDATE TBLTREATMENTSET
   SET INTTREATMENTSETCOUNTFACT = :cnt
   WHERE INTTREATMENTSETID = :INTTREATMENTSETID;
 END
END ^

SET TERM ; ^


при попытке выполнить пишет
Dynamic SQL Error
SQL error code = -206
Column unknown
Statement: CREATE PROCEDURE inc_treatmentvisit

Где бага, а то уже час пытаюсь написать процедуру? )


Anatoly Podgoretsky   (2006-12-25 13:30:00) [6]

> Steep  (25.12.2006 13:21:10)  [10]

Но ты же просил по SQL, а программирование в Дельфи это совсем другие книги.


Anatoly Podgoretsky   (2006-12-25 13:30:00) [7]

> Руслан56  (25.12.2006 13:14:09)  [9]

Скидывание литературы в форуме Прочее http://www.delphimaster.ru/cgi-bin/forum.pl?n=3


Steep   (2006-12-25 13:21:00) [8]


> Скинте лучше хорошую литературку по SQL

У меня есть учебник отсканенный 50 Мб :)
Давально легко все расписано, жалко там только sql (и ни слова как использовать его из программы)


Руслан56   (2006-12-25 13:14:00) [9]

ЮЮ
>>Три дня назад ты иначе говорил: Да но мне не SQL надо. Спасибо конечно !!! :)

ЮЮ открыл мне глаза что на SQL коды не деревянные

будем заниматься :)

Скинте лучше хорошую литературку по SQL

ЮЮЮ  --- Спасибо за код !!!


ANB   (2006-12-25 11:29:00) [10]


> Грамотный такой чтоли ?
> Чем Юродствовать помог бы ! я только начинаю вникать а тут
> такие задачи.
>
> Тут есть задачка по сложней и она нужней !!!

давай лучше так - я тебе скидываю свою задачку, ты ее делаешь, а взамен я буду тебе весь семестр писать запросы на SQL по любым заданиям :)


ЮЮ   (2006-12-25 10:48:00) [11]

Три дня назад ты иначе говорил: Да но мне не SQL надо. Спасибо конечно !!!:)


> cod_chel ( cod_chel('y1')),

это что за чушь? Откуда тебе вообще известен код человека?
Открою ещё один секрет SQL - WHERE:

SELECT  STATUS, COUNT(STATUS )
FROM "RRR.DBF" RRR
WHEREcod_chel = :cod_chel
GROUP BY STATUS


Руслан56   (2006-12-25 10:32:00) [12]

Я вот с таким мучаюсь

SELECT cod_chel ( cod_chel('y1')), // вабрать код определенного человека из таблицы RRR

//выбрать  все поля с его кодом
// и рачитать на него сумму всех строк с одинаковыми значениями

STATUS, COUNT(STATUS )
FROM "RRR.DBF" RRR
GROUP BY STATUS


Sergey13   (2006-12-25 09:43:00) [13]

> [2] Руслан56   (25.12.06 09:19)
> я только начинаю вникать а тут такие задачи.
А по учебному плану, раз такие задачи (на азы SQL) задают, должен был бы уже вникнуть.


ЮЮ   (2006-12-25 09:34:00) [14]

Хотя, судя по терминам (ячейки, строчки, сумма строчек), вопрос чисто риторический :)


ЮЮ   (2006-12-25 09:29:00) [15]

А ты вообще сам запросы пишешь?
Напиши то, что получилось.
А то ответ при таком вопросе может быть только такой :)

SELECT  SUM(строчки)
FROM таблица
WHERE Человек = определеный код


Руслан56   (2006-12-25 09:19:00) [16]

Грамотный такой чтоли ?
Чем Юродствовать помог бы ! я только начинаю вникать а тут такие задачи.

Тут есть задачка по сложней и она нужней !!!

Спавишся ???

Составь запрос !!!

В таблице МНОГо Человек с определеным кодом, У каждого много строк .

Нужно составить запрос  на Человека (определенного) что бы выбирал его разлачные строки и подсчитывал их сумму !!!


Sergey13   (2006-12-25 08:40:00) [17]

На лекции не ходил, книжки не читал.

Ты все пела - это дело
Так поди же попляши.
(с) дедушка Крылов


Наверх

Титульная страница Поиск, карта сайта Написать письмо