Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Наиболее часто используемое выражение / 9 сообщений из 9, страница 1 из 1
05.03.2020, 10:43
    #39934495
Earl11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
Доброго времени суток.
Есть таблица типа
text value1
----------------------
text1 5
text2 3
text1 4
text3 2
...
Нужно найти наиболее часто повторяющейся текст с наибольшим значением value
...
Рейтинг: 0 / 0
05.03.2020, 10:57
    #39934507
invm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
Код: sql
1.
2.
3.
4.
5.
6.
select top (1) with ties 
 [text], value1
from
 [Есть таблица типа]
order by
 count(*) over (partition by [text]) desc, value1 desc;
...
Рейтинг: 0 / 0
05.03.2020, 17:47
    #39934841
Earl11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
А для топ 50 годится такой вариант?
...
Рейтинг: 0 / 0
05.03.2020, 19:01
    #39934879
Earl11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
Просто выдает следующее

count(text) text value5 text1 500001 text2 20000
хотелось бы, чтобы и в count и в value было по максимуму
count(text) text value1000 textN 20000
...
Рейтинг: 0 / 0
05.03.2020, 19:16
    #39934891
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
Earl11
Просто выдает следующее
А у меня выдаёт
Код: plaintext
1.
text	value1
text1	5
Вы бы сделали скрипт с тестовыми данными, и сказали сразу, что вам нужно получить, без модификаций ТЗ "по ходу"
...
Рейтинг: 0 / 0
05.03.2020, 20:12
    #39934921
nullin
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
Earl11, top(1) поменяли на top(50), оттого такой и результат?
...
Рейтинг: 0 / 0
05.03.2020, 21:41
    #39934941
Earl11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
alexeyvg, допустим такую таблицу
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
CREATE TABLE tab (
    value int,
    text varchar(255))
INSERT INTO tab 
VALUES (564887, 'from' );
INSERT INTO tab (value,text)
VALUES (746654,  'select');
INSERT INTO tab (value,text)
VALUES (35684,  'table');
INSERT INTO tab (value,text)
VALUES (4646547,  'select');
INSERT INTO tab (value,text)
VALUES (45654654,  'table');
INSERT INTO tab (value,text)
VALUES (564878321,  'select');
INSERT INTO tab (value,text)
VALUES (35987,  'from');
INSERT INTO tab (value,text)
VALUES (215498,  'select');
INSERT INTO tab (value,text)
VALUES (132135,  'table');


По приведённому варианту он выдаст такое
text valueselect 564878321select 4646547select 746654select 215498table 45654654table 132135table 35684from 564887from 35987
Можно использовать запрос такой, просуммировать, чтобы получить, о чём говорил
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
with t1 as (select top (10) with ties 
 text, value
from
tab
group by  text, value
order by
 count(*) over (partition by text) desc, value desc)
 select count(text),text,sum(value) from t1 
 group by text


count text sumValue 2 from 6008744 select 5704870203 table 45822473
ОК. Но если в бд мильон записей, какой топ ему выставлять, чтоб всё вошло в данном случае?
...
Рейтинг: 0 / 0
05.03.2020, 21:51
    #39934946
Earl11
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
Так) Туплю, этого не нужно, вроде, всё верно)
...
Рейтинг: 0 / 0
05.03.2020, 22:28
    #39934950
alexeyvg
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Наиболее часто используемое выражение
Earl11
Так) Туплю, этого не нужно, вроде, всё верно)
уффф, я тоже долго думал, что вам не нравится :-)
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Наиболее часто используемое выражение / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]