Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field) / 17 сообщений из 17, страница 1 из 1
12.05.2012, 10:26
    #37790509
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Есть таблица в Экселе о телефонных звонках за период. Типа датавремя, номер (с кот-го звонили), номер на который звонили. Можно ли в Экселе получить выборку номеров телефонов, с кот-х звонили на несколько номеров? Т.е. сымитировать запрос типа
Код: plsql
1.
2.
3.
4.
SELECT out_phone, COUNT(DISTINCT in_phone) uniq_count from t
GROUP BY out_phone
HAVING COUNT(DISTINCT in_phone)>1
ORDER BY uniq_count DESC


Может опция есть в сводной таблице какая-нибудь?
------
Не люблю Progress OpenEdge.
...
Рейтинг: 0 / 0
12.05.2012, 10:28
    #37790516
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
А зачем его имитировать, если можно просто через АДО подключиться к файлу и выполнить?
Или стрктура файла не позволяет?
...
Рейтинг: 0 / 0
12.05.2012, 10:38
    #37790532
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Shocker.ProА зачем его имитировать, если можно просто через АДО подключиться к файлу и выполнить?
Или стрктура файла не позволяет?
А в JET есть возможность использовать COUNT(DISTINCT f) ?
...
Рейтинг: 0 / 0
12.05.2012, 10:45
    #37790549
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
по идее это вроде соответствует спецификации классического SQL, я не уверен, впрочем, кто мешает попробовать?
...
Рейтинг: 0 / 0
12.05.2012, 10:54
    #37790577
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Shocker.Proпо идее это вроде соответствует спецификации классического SQL, я не уверен, впрочем, кто мешает попробовать?
Попробовал, ошибка синтаксиса :-\. Нету COUNT DISTINCT. Так что вся надежда на спецов по Экселю.
...
Рейтинг: 0 / 0
12.05.2012, 10:58
    #37790586
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
А пока ждем спецов по экселю.... можно же этот запрос переписать как вложенный с группировкой без Distinct. Только опять же не знаю, поддерживает ли JET вложенные запросы.
...
Рейтинг: 0 / 0
12.05.2012, 11:03
    #37790593
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Shocker.ProА пока ждем спецов по экселю.... можно же этот запрос переписать как вложенный с группировкой без Distinct. Только опять же не знаю, поддерживает ли JET вложенные запросы.
Вложенные 100% поддерживает, но как-то попроще хочется. Я, честно признаться, пока боюсь думать на тему такого решения. Мб проще будет разово на какой-нить сервер перекинуть табличку.
...
Рейтинг: 0 / 0
12.05.2012, 11:16
    #37790619
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
а что тут думать, прыгать надо (с)
Код: sql
1.
2.
3.
4.
5.
6.
SELECT out_phone, TGRP.CntIn uniq_count
FROM t INNER JOIN (
  SELECT out_phone, Count(*) CntIn FROM t GROUP BY out_phone
  ) TGRP ON t.out_phone=TGRP.in_phone
WHERE TGRP.CntIn>1
ORDER BY TGRP.CntIn DESC


если не наврал...
...
Рейтинг: 0 / 0
12.05.2012, 11:17
    #37790620
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Наврал
Код: sql
1.
2.
3.
4.
5.
6.
SELECT out_phone, TGRP.CntIn uniq_count
FROM t INNER JOIN (
  SELECT out_phone, in_phone, Count(*) CntIn FROM t GROUP BY out_phone, in_phone
  ) TGRP ON t.out_phone=TGRP.in_phone
WHERE TGRP.CntIn>1
ORDER BY TGRP.CntIn DESC
...
Рейтинг: 0 / 0
12.05.2012, 12:38
    #37790820
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Конвертировал лист в CSV, CSV скинул на Oracle 10XE, выполнил исходный вопрос и, получив результат, осознал, что можно было сделать сводную таблицу, скинуть только значения и получить нужный мне COUNT(DISTINCT in_phone) формулой СЧЁТЗ, а HAVING COUNT(DISTINCT in_phone)>1 формулой ЕСЛИ, соответственно.
Реализация со сводной заняла пару минут. Пичалька.
PS Shocker.Pro, у вас не те данные запрос выдает.
-----
Не люблю Progress OpenEdge.
...
Рейтинг: 0 / 0
12.05.2012, 14:01
    #37791010
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
кладовщикPS Shocker.Pro, у вас не те данные запрос выдает.вроде попытался реализовать тот же запрос, только без distinct, но тестовые данные набивать было леть, поэтому не проверял )
...
Рейтинг: 0 / 0
12.05.2012, 15:32
    #37791198
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Shocker.ProкладовщикPS Shocker.Pro, у вас не те данные запрос выдает.вроде попытался реализовать тот же запрос, только без distinct, но тестовые данные набивать было леть, поэтому не проверял )решил, таки добить, я на самом деле сам себя перехитрил, всеж проще:
Код: sql
1.
2.
3.
4.
5.
SELECT out_phone, COUNT(in_phone) uniq_count from
  (SELECT out_phone, in_phone FROM t GROUP BY out_phone, in_phone) t2
GROUP BY out_phone
HAVING COUNT(in_phone)>1
ORDER BY uniq_count DESC

сорри, что не своевременно )
...
Рейтинг: 0 / 0
12.05.2012, 15:50
    #37791241
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Shocker.Pro, да, последний вар-т рабочий. Занесу себе в банку знаний. Респект.
-----
Не люблю ProgressOpenEdge.
...
Рейтинг: 0 / 0
12.05.2012, 18:28
    #37791517
катастрофа
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
кладовщик,
>Занесу себе в банку знаний
можете выложить файл где код Шокера работает, как у Вас там этот код запускается?
...
Рейтинг: 0 / 0
13.05.2012, 07:26
    #37791854
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
катастрофакладовщик,
>Занесу себе в банку знаний
можете выложить файл где код Шокера работает, как у Вас там этот код запускается?
Я последний вар-т для запроса в Акцессе проверил, выполнив СЕЛЕКТ Shocker.Pro к связанной таблице, - упомянутому мной ранее CSV-файлу. Предварительно откорректировал текст запроса для JETа.
Код: plsql
1.
2.
3.
4.
5.
SELECT out_phone, COUNT(in_phone) as uniq_count from
  (SELECT out_phone, in_phone FROM t GROUP BY out_phone, in_phone) as t2
GROUP BY out_phone
HAVING COUNT(in_phone)>1
ORDER BY  COUNT(in_phone) DESC


В VBA неохота было прописывать.
------
Не люблю Progress OpenEdge.
...
Рейтинг: 0 / 0
13.05.2012, 19:54
    #37792282
кладовщик
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
Shocker.ProНаврал
Код: sql
1.
2.
3.
4.
5.
6.
SELECT out_phone, TGRP.CntIn uniq_count
FROM t INNER JOIN (
  SELECT out_phone, in_phone, Count(*) CntIn FROM t GROUP BY out_phone, in_phone
  ) TGRP ON t.out_phone=TGRP.in_phone
WHERE TGRP.CntIn>1
ORDER BY TGRP.CntIn DESC


Решил после поста юзера катастрофа указать на ошибку в условии джойна t.out_phone=TGRP.in_phone. Это условие должно выбирать те фантастические звонки, в кот-х абонент звонит на свой собственный номер.
-----
Не люблю Progress OpenEdge.
...
Рейтинг: 0 / 0
13.05.2012, 20:09
    #37792288
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field)
да, это была опечатка, а точнее опкопипастка (использую буфер обмена с историей)
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Можно ли в Экселе реализовать наподобие SELECT COUNT(DISTINCT field) / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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