Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.02.07;
Скачать: CL | DM;

Вниз

SQL   Найти похожие ветки 

 
Malyatko   (2002-01-10 17:26) [0]

Здрайствуйте Господа! Пожалуйста, помогите. Есть база данных (*.gdb) в которой одна из таблиц имеет поле типа integer.
Как с помощю запроса или хранимой процедуры посчитать какое число встречается наиболие часто, и вернуть результат
подщета, вмести с числом которое считали в работающую програму.
C уважением Малятко.


 
asafr ©   (2002-01-10 17:30) [1]

SELECT FIELD1, COUNT(*) FROM TABLE1
GROUP BY FIELD1


 
Romkin ©   (2002-01-10 17:46) [2]

Рекомендую попробовать

create procedure sel_count
returns(max_count integer, max_Number integer)
as
declare variable counter integer;
declare variable number integer;
begin
max_count = 0;
for select count(numberField), NumberField
from NumberTable
group by NumberField
into :counter, :Number
do
if (max_count < conter) then
begin
max_count = counter;
max_number = number;
end
suspend;
end

Ну соотв, имена таблицы и полей - какие у тебя, и вроде работать будет...


 
Praco ©   (2002-01-10 17:48) [3]

To asafr: неправильно

Вот как нужно:
/* Внутри процедуры, понятно*/
for
select field1, COUNT(field1) from table1
group field1
order by 2 desc
into :max_field1, :count_field1
do begin
suspend;
exit;
end


 
asafr ©   (2002-01-10 17:53) [4]

Извиняюсь, если к IB6 не подходит. Я написал классический SQL без учета особенностей IB6, ибо совсем не силен в этом самом IB6.


 
Desdechados   (2002-01-10 20:15) [5]

2 Romkin
инициализация max_count на минимальный отрицательный INT


 
Alexandr ©   (2002-01-11 06:54) [6]

SELECT FIELD1, COUNT(*) FROM TABLE1
GROUP BY FIELD1
order by 2 desc

и возьми первую строку

а если у тебя последний Firebird то

SELECT first 1 FIELD1, COUNT(*) FROM TABLE1
GROUP BY FIELD1
order by 2 desc
будет всего одна строка

а если у тебя Interbase 6.5 (скажи где взял) то

SELECT FIELD1, COUNT(*) FROM TABLE1
GROUP BY FIELD1
order by 2 desc
rows 1
будет всего одна строка




 
Romkin ©   (2002-01-11 11:05) [7]

2Desdechados (10.01.02 20:15)
Зачем? count выдает >=0



Страницы: 1 вся ветка

Текущий архив: 2002.02.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
7-19010
@andrew
2001-10-30 10:25
2002.02.07
Привет Всем! Посоветуйте!


14-18979
phantom2040
2001-12-18 13:32
2002.02.07
CGI программа на Delphi под Unix


1-18905
DJ X
2002-01-22 11:37
2002.02.07
Заголовок DLL


6-18946
ReY
2001-11-13 11:17
2002.02.07
Как программно расшарить диск.... и обратно.


6-18924
Arseny
2001-11-12 20:59
2002.02.07
Client-Server