Czy możesz uzyskać wyraźną kombinację 2 różnych pól w tabeli bazy danych? jeśli tak, czy możesz podać przykład SQL.
Odpowiedzi:
A może po prostu:
select distinct c1, c2 from t
lub
select c1, c2, count(*)
from t
group by c1, c2
Operand should contain 1 column(s)
błąd, twój problem polega na tym, że prawdopodobnie to robisz select distinct(c1, c2) from t
i nie możesz tutaj używać nawiasów. Tak się tu dostałem.
Jeśli chcesz mieć różne wartości tylko z dwóch pól, a także zwrócić z nimi inne pola, to inne pola muszą mieć jakąś agregację (suma, min, maksimum itp.), A dwie kolumny, które chcesz odrębne, muszą pojawić się klauzula group by. W przeciwnym razie jest tak, jak mówi Decker.
Podziel się moją głupią myślą:
Może mogę wybrać inny tylko na c1, ale nie na c2, więc składnia może być select ([distinct] col)+
gdzie distinct
jest kwalifikatorem dla każdej kolumny.
Ale po namyśle stwierdzam, że wyróżnienie tylko jednej kolumny jest nonsensem . Weźmy następujący związek:
| A | B
__________
1| 1 | 2
2| 1 | 1
Jeśli mamy select (distinct A), B
, to co jest właściwe B
dla A = 1
?
Tak więc distinct
jest kwalifikatorem dla statement
.