Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.005 c
7-19015
SD
2001-10-30 13:57
2002.02.07
Что значит частота отцифровки звука 11025 Гц


7-18997
XM-AD
2001-10-22 11:48
2002.02.07
Как забить на КиллПроцесс!???


7-19009
Wonder
2001-10-29 11:35
2002.02.07
stdin/stdout


3-18747
Dim
2002-01-11 09:22
2002.02.07
Значение параметра по умолчанию в InterBase e.


1-18864
VID
2002-01-22 11:43
2002.02.07
Передача и ПОЛУЧЕНИЕ команд от одной проги к другой.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский