Вниз
Скачать: CL | DM;

Как получить записи с единственным значением поля?   Найти похожие ветки 

 
Ш-К   (2007-03-02 03:58) [0]

Есть таблица table1 (f1, f2, f3).
Надо получить все те записи, где значение у поля f1 встречается один раз.


 
Ш-К   (2007-03-02 05:06) [1]

Нашел:
SELECT f1, Min(f2), Min(f3)
FROM table1
GROUP BY f1
HAVING Count(f1)=1


А так не работает:
SELECT f1, f2, f3
FROM table1
GROUP BY f1
HAVING Count(f1)=1


 
ЮЮ ©   (2007-03-02 05:39) [2]

SELECT f1, f2, f3
FROM table1
WHERE t1 IN
 (
   SELECT f1
   FROM table1
   GROUP BY f1
   HAVING Count(f1)=1
 )


 
Ш-К   (2007-03-02 06:01) [3]

У меня был такой вариант, только неправилиный )


 
Atanas   (2007-03-02 08:33) [4]

В предыдущем варианте замени t1 на f1 т.е.

SELECT f1, f2, f3
FROM table1
WHERE t1 IN
(
  SELECT f1
  FROM table1
  GROUP BY f1
  HAVING Count(f1)=1
)

И все работает


 
Atanas   (2007-03-02 08:36) [5]

Прошу прощения, вот так

SELECT f1, f2, f3
FROM table1
WHERE f1 IN
(
  SELECT f1
  FROM table1
  GROUP BY f1
  HAVING Count(f1)=1
)

А вот этот вариант работать не будет

SELECT f1, f2, f3
FROM table1
GROUP BY f1
HAVING Count(f1)=1

Потому, все что не в group by должно быть агрегатными функциями а у тебя там поля f2 и f3


 
~SerJant~   (2007-03-02 10:48) [6]

немного проще )))

SELECT f1, f2, f3
FROM table1 t
WHERE (select count(t1.f1) from table1 t1 where t1.f1 = t.f1)=1



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.027 c
15-1177077151
Real
2007-04-20 17:52
2007.05.20
Глюк формума


3-1172922633
---SerG---
2007-03-03 14:50
2007.05.20
Инсталятор для баз данных


1-1174928619
Alex___
2007-03-26 21:03
2007.05.20
Запуск процесса из службы в висте...


15-1177393553
AirLarson
2007-04-24 09:45
2007.05.20
Где можно преобрести Advantech и Cisco


9-1150539273
Galiaf
2006-06-17 14:14
2007.05.20
BASS или FMOD?




   Наверх