Topic: įterpimas/updeitas pagal unikalius raktus

Taigi, turiu du unikalus stulpelius (keyword, site_id, count).
Ko man reikia:
Site_id būna arba 2 arba 4, keywordas keičiasi, count updeitinamas laukas.
Nelabai moku paaiškint, gal pavyzdžius duosiu, tarkim:

INSERT INTO t(keyword, site_id, count) 
VALUES('mysql', 2, 0)
ON DUPLICATE KEY UPDATE
count = count + 1;

Dabar paleidus antrąkart, jei egzistuoja įrašas su keywordu 'mysql' ir site_id lygiu 2, tada updeitintu (count pakelia vienu), jei site_id = 4, tada insertinam.
Pavyzdys antros užklausos:

INSERT INTO t(keyword, site_id, count)
VALUES('mysql', 4, 0)
ON DUPLICATE KEY UPDATE
count = count + 1;

Po šios užklausos egzistuos dvi eilutės - ('mysql', 2, 0), ('mysql', 4, 0).
Galvoju, čia kažką su unique key'ais reik daryt, bet nelabai suprantu. O gal taip net neįmanoma?

Re: įterpimas/updeitas pagal unikalius raktus

Ta prasme tu nori padaryti unikalu rakta iš dviejų stulpeliu? http://www.google.lt/search?&q=mysq … two+fields

ALTER TABLE table_name ADD UNIQUE index_name (column_name[,...]);

Re: įterpimas/updeitas pagal unikalius raktus

Heh, tikrai, dėkui. Anksčiau buvau padaręs, tik nesuveikė kažko, matyt per daug stulpelių prirašęs buvau :)