Rutynowo analizuję źródło json i muszę wstawiać tylko najnowszych użytkowników z kanału i ignorować istniejących użytkowników.SQL: Wstawianie tylko nowych wierszy/rekordów do tabeli?
myślę co muszę to ON DUPLICATE KEY UPDATE
lub INSERT IGNORE
oparty na poszukiwaniach, ale nie jestem pewien, dlatego pytam - tak na przykład:
users
1 John
2 Bob
Częściowa JSON:
{ userid:1, name:'John' },
{ userid:2, name:'Bob' },
{ userid:3, name:'Jeff' }
Z tego kanału chcę wstawić tylko Jeffa. Mogłem wykonać prostą pętlę przez wszystkich użytkowników i wykonać proste zapytanie SELECT i sprawdzić, czy identyfikator użytkownika jest już w tabeli, jeśli nie, wykonuję INSERT, jednak podejrzewam, że nie będzie to skuteczna i praktyczna metoda.
Nawiasem mówiąc, używam Zend_Db do interakcji z bazą danych, jeśli ktoś chciałby podać konkretną odpowiedź :) Nie mam jednak nic wspólnego z ogólnym rozwiązaniem strategicznym.
Jakoś misread pytanie o potrzebę aktualizacji istniejących użytkowników, jeśli zostanie znaleziony, w przeciwnym razie wstaw jako nowy. dobrze ... w dół głosował –