Oznaczenie rekordów zduplikowanych w tablicy |
Oznaczenie rekordów zduplikowanych w tablicy |
12.03.2019, 11:46:04
Post
#1
|
|
Grupa: Zarejestrowani Postów: 102 Pomógł: 0 Dołączył: 16.01.2014 Ostrzeżenie: (0%) |
Witam,
mam taki problem, mam sobię tablicę która wygląda tak:
W jaki sposób mógłbym zmienić wartość dla pola lp w taki sposób, ze jak jest to samo order_id , dla pierwszego rekordu który ma te samo order_id, lp ustawić na 1, a dla pozostałych 0( czyli w podanym wyżej przykładzie występuje 3 razy rekord o order_id 123227, jak dla pierwszego rekrodu lp ustawić na 1 a dla dwóch pozsotałych zostawić 0) , domyślnie jeśli występuje tylko jednen rekord o danym numere order_id lp ma być ustawione na 0. Ktoś coś podpowie ? Ten post edytował Bondar91 12.03.2019, 11:51:28 |
|
|
12.03.2019, 13:25:19
Post
#2
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 77 Dołączył: 6.09.2008 Skąd: Miechów / Kraków Ostrzeżenie: (0%) |
Tworzysz sobie dodatkową tablicę w której kluczem będzie wartość z order_id, a wartością indeks w tablicy z elementami.
Następnie lecąc w pętli po tablicy z elementami ustawiasz im wartość "lp" na 0 oraz dodajesz do tej dodatkowej elementy na zasadzie "order_id -> indeks". W przypadku, gdy istnieje już klucz o danym order_id to nie dodajesz, tylko pobierasz wartość z dodatkowej tablicy dla danego klucza order_id. Mając indeks, możesz ustawić wartość "lp", dla pierwszego elementu na 1. -------------------- Niemożliwym jest stworzenie czegokolwiek idiotoodpornego, ponieważ idioci są wyjątkowo pomysłowi.
https://www.aroch.pl https://themeforest.net/user/aroch https://www.astroblog.aroch.pl https://www.4geeks.pl |
|
|
Wersja Lo-Fi | Aktualny czas: 29.03.2024 - 00:20 |