Als (oude) beginner ben ik nog immer aan het knutselen aan een projectje om meer te begrijpen van php, mysql en het maken van websites.
Ik gebruik nu xamp met mysql (mariadb).
Ik voeg via een php script nieuwe EAN nummers toe aan db 'products' vanuit db 'tmp' via onderstaande query
Dat werkt prima, nu leek het me handig om ook de timestamp toe te voegen, dus de timestamp van de 1e keer dat de EAN wordt toegevoegd. Dus ik had ondestaande bedacht.
Nu wordt er een timetamp toegevoegd. MAAR, deze wordt geupdate bij het opnieuw laden, en dat willen we dus niet. Dus blijkbaar is SET niet de juiste syntax, maar moet ik de timestamp meenemen in de INSERT.
Nu kwam ik INSERT INTO.... VALUES... tegen met een aantal voorbeelden. maar in de voorbeelden kwam ik geen select, of timestamp tegen. Dus ik heb onderstaand geprobeerd in allerlei variaties met en zonder brackets, maar ik krijg het niet voor elkaar.
Moet ik het zonder brackets doen? of alleen brackets om de select? Of moet de values geheel weg?
Of zit ik compleet op de verkeerd en moet het totaal anders?
Ik gebruik nu xamp met mysql (mariadb).
Ik voeg via een php script nieuwe EAN nummers toe aan db 'products' vanuit db 'tmp' via onderstaande query
code:
1
2
3
| INSERT INTO products (EAN) SELECT column13 FROM tmp WHERE column13 NOT IN (SELECT EAN FROM products) |
Dat werkt prima, nu leek het me handig om ook de timestamp toe te voegen, dus de timestamp van de 1e keer dat de EAN wordt toegevoegd. Dus ik had ondestaande bedacht.
code:
1
2
3
4
| INSERT INTO products (EAN) SELECT column13 FROM tmp SET date_added = timestamp() WHERE column13 NOT IN (SELECT EAN FROM products) |
Nu wordt er een timetamp toegevoegd. MAAR, deze wordt geupdate bij het opnieuw laden, en dat willen we dus niet. Dus blijkbaar is SET niet de juiste syntax, maar moet ik de timestamp meenemen in de INSERT.
Nu kwam ik INSERT INTO.... VALUES... tegen met een aantal voorbeelden. maar in de voorbeelden kwam ik geen select, of timestamp tegen. Dus ik heb onderstaand geprobeerd in allerlei variaties met en zonder brackets, maar ik krijg het niet voor elkaar.
code:
1
2
3
| INSERT INTO products (EAN, date_added) VALUES (SELECT column13 FROM tmp) , (CURRENT_TIME() ) WHERE column13 NOT IN (SELECT EAN FROM products) |
Moet ik het zonder brackets doen? of alleen brackets om de select? Of moet de values geheel weg?
Of zit ik compleet op de verkeerd en moet het totaal anders?