Mam taki oto problem. Jest sobie tabela, w której znajduje się ok. 8 000 rekordów. Jedno z pól tej tabeli to pole indeks. Pole to nie jest unikalne, tzw. wiele rekordów posiada taką samą wartość wpisaną w tym polu. Teraz chciałbym pobrać z tej tablicy dane (SELECT * FROM) ale chciałbym to zrobić tak, żeby pobrane zostały tylko pierwsze rekordy zawierające indeks. Czyli: jeżeli n-ty rekord posiada indeks, powiedzmy 1234, a żaden z poprzednich rekordów nie miał takiej wartości tego pola, to taki rekord jest pobierany. A jeżeli jakiś pobrany już wcześniej rekord miał taki indeks, to wtedy tenże n-ty rekord nie jest pobierany.
Zrealizowałoby to zapytanie:
SELECT DISTINCTS indeks FROM
ale mnie potrzebne jest zapytanie, które zastosuje DISTINCT tylko do tego jednego pola, pobierając równocześnie wszyskie pozostałe dane:
(coś w tym stylu).
SELECT * FROM tabela WHERE DISTINCT indeks
Da się to zrobić jednym zapytaniem? Czy też trzeba będzie to rozbić na więcej zapytań bądź sprawdzać po pobraniu danych, czy dana wartość pola już się nie pojawiła?