mysql: insert record, jeśli nie istnieje, zwraca identyfikator rekordu
muszę wstawić unikalne wartości w tabeli i potrzebować identyfikatorów rekordów, wstawić te identyfikatory w tabeli relacji, trzeba wstawić rekord, jeśli nie istnieje, zwrócić identyfikator wstawki, jeśli istnieje, zwrócić klucz podstawowy rekordu (id ).
i chcę to zrobić dla wielu wartości, takich jak pomarańczowy, mango, banan, jak wstawka wsadowa.
schemat:
------------
id | tag |
------------
1 | orange|
------------
Mam trid to dla pojedynczego rekordu
INSERT INTO `tags` (`tag`)
SELECT 'myvalue1'
FROM tags
WHERE NOT EXISTS (SELECT 1 FROM `tags` WHERE `tag`='myvalue1')
LIMIT 1
wysłałem pytanie, aby dowiedzieć się jakieś zoptymalizowane rozwiązanie, nie chcę używać dodatkowych pętli w kodzie, aby dopasować wartości z db.