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

Вниз

Классическая ситуация   Найти похожие ветки 

 
Grrey   (2002-07-02 18:46) [0]

Есть таблица:
Table1 (ID, Field1, Field2)

Нужно получить количество строк с одинаковым Field1 и разными Field2.
Я делаю так:
SELECT COUNT(A.ID) FROM TABLE1 A, TABLE1 B
WHERE
(A.ID<>B.ID) AND
(A.FIELD1=B.FIELD1) AND
(A.FIELD1<>B.FIELD2)


 
Val ©   (2002-07-02 18:59) [1]

поздравляю :)
только нет вопроса и неясно условие: что выводить, если у нас, допустим, пять строчек удовлетворяет условию, но поле1 имеет одно значение, и еще семь строчек, тоже удовлетворяющих, но значение поля1 другое?


 
Grrey   (2002-07-02 19:26) [2]

Если поле1 разное, то его уже не считать, а если одинаковое, то в зависимости от поля2 если поле2 одинаковое, то несчитать и наоборот.


 
Lola ©   (2002-07-02 19:40) [3]

Что-то непонятно, "Если поле1 разное, то...". А с чем оно "разное"? Само с собой? Уточни, с чем сравниваешь. Такие вопросы на ночь глядя... :))


 
Grrey   (2002-07-02 19:45) [4]

Да с собой!
Здесь только одна таблица!


 
Lola ©   (2002-07-02 22:46) [5]

А зачем? :( Если оно всегда будет равно само себе ? Да и ID зачем сравнивать?


 
Shaman ©   (2002-07-03 03:07) [6]

SELECT Field1, COUNT(ID) FROM Table1
GROUP BY Field1


 
DarkGreen   (2002-07-03 06:12) [7]

2 Shaman
Наверное следует добавить

HAVING Field1 <> Field2?


 
Val ©   (2002-07-03 10:19) [8]

>Grrey (02.07.02 19:45)
мда.. повторяю еще раз - уточните условие, что вы хотите получить, если данные имеют вид:
ID, Field1, Field2
1 1 2
2 1 3
3 2 5
4 2 6
5 2 2


 
Grrey   (2002-07-03 10:34) [9]

to Val> Результат запроса должен быть - 2, т.к. в первых 2-ух строчках Поле1 имеет одно значение, а ID и Поле2 - разные значит его надо считать, в остальных строках тоже Поле1 - одинаковое, а остальные - разные следовательно еще одно поле1 мы считаем.
Если окажется, что Поле1 встречается только с одним и темже Полем2, то его считать не следует
Поле1 и Поле2 разные типы данных и их сравнивать не имеет смысла.
to Lola> Для того и ID, чтоб с собой не сравнивала!


 
Grrey   (2002-07-03 10:40) [10]

Дошло!
Вот готовый запрос если кому интересно:
SELECT distinct(Field1), count(dISTINCT(Field2)) from Table1
group by Field1
having count(Field2)>1

только надо сумму по второму полю, но это дело техники



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

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

Наверх




Память: 0.48 MB
Время: 0.01 c
1-81357
Александр
2002-07-13 18:04
2002.07.25
TCaption в Word


6-81397
DKemper
2002-05-15 22:39
2002.07.25
!!!Очень!!! нужна помощь с TServerSocket.....


8-81389
Vvedensk
2002-03-15 14:23
2002.07.25
Как увеличить изображения с малой потерью качества подобно таму как это делает PhotoShop


1-81326
Skier
2002-07-12 17:30
2002.07.25
Просто стало интересно


14-81448
Lu
2002-06-24 00:17
2002.07.25
Кто нибудьт знает как реализовать работу с SSH