Próbowałem zadać to pytanie na forum.php.pl, ale nie uzyskałem odpowiedzi. Stąd też pytanie jest jak gdyby zadane 3 razy w tym poście, ponieważ starałem się jak najdokładniej wyjaśnić o co mi chodzi.
Witam. Muszę wykonać dość nietypowe zapytanie. Posiadam tablicę liczb, np:
[25,76,3,5,3,6,...]
gdzie niektóre liczby mogą się powtarzać.
Chciałbym teraz zliczyć, ile razy ID danego obiektu znajduje się w tej tablicy, coś w stylu:
SQL
SELECT COUNT(id IN (tablica_jak_wyzej)) AS liczba
Jak skonstruować odpowiednie zapytanie w MySQL ?
Muszę posortować elementy z bazy, wg. tego, ile razy ich ID pojawia się w mojej tablicy, którą mam w php (tablicy liczb). Elementów w bazie może być ponad 100.000.
Przykład:
w bazie mam tabelę
id | nazwa
i w niej rekordy
1|Adam
2|Zośka
3|Krzych
,oraz tablicę w php $tablica = array(1,2,3,1,2,1);
chciałbym otrzymać odpowiedź w tej kolejności:
Adam (bo jego ID występuje w tablicy 3 razy), Zośka, Krzych
Mi chodzi o to, że mam w php tablicę z powtarzającymi się wartościami, gdzie przechowuję numery ID obiektów z bazy danych. Teraz chcę wybrać te obiekty wg. tego, ile razy ich ID pojawia się w tej mojej tablicy.