evo neki se vratili sa odmora .. sad dal smo se odmorili to je pitanje
Citat:
dsivic:
kako mogu spojiti redove po artikal_id i user_id
nemoj ovo uzeti licno, ja postajem extremno alergican (a i ova koza koja mi otpada sa ramena ne pomaze) na izraz "kako da spojim redove" .. ja ne znam gde vas to uce i ko vas to uci ali aj probaj na srpskom/hrvatskom/makedonskom/engleskom/bugarskom ili koji ti je vec jezik priljezan napisati to tako da i tvoja devojka to razume :) ... redove mozes da spojis tako sto ce da ih otstampas pa uheftas, mozes i sa lepkom za papir, tutkalom ..
u racionalnoj algebri join moze da bude na gzilion nacina (natural, equi, semi, anti, outer, inner, left, right, full... pa onda kombinacije .. ) tako da "ja bi da spojim" .. (mozda sam preosetljiv narednih par dana dok ne otpadne ova izgoretina pa prestane to da me nervira :D )
Citat:
dsivic:
Može li se ovo riješiti jednim upitom.
obzirom na sta sve moze da se ugura u unije i subselecte svasta se danas moze nazvati "jednim upitom", da li je to optimalno resenje sa jednim upitom to je vec pitanje.
Citat:
dsivic:a izbrisati duple `artikl_id`?
brisanje duplikata je uvek problem. i to ogroman. to je proces koji realno ne moze da se uradi "kako valja" (koji duplikat da obrises? prvi, drugi? po kom uslovu ces da odlucis koji ces da obrises?) i to je obicno zato sto to u startu znaci da je baza lose dizajnirana. ako imas duplikate to je zato sto si zaboravio da postavis neki unique key
Citat:
dsivic:
Code:
CREATE TABLE `korpa` (
`artikal_id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(11) DEFAULT NULL,
`sifra` varchar(20) DEFAULT NULL,
`naziv` varchar(255) DEFAULT NULL,
`jm` char(5) DEFAULT NULL,
`kolicina` int(11) DEFAULT '1',
`cijena` decimal(10,2) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;
ne valja ti ovo, kaze: ERROR 1072 (42000): Key column 'id' doesn't exist in table
dakle u startu si dao create koji ne radi, nisi proverio datu sa kojom mi treba da ti pomognemo, to je generalno nepostovanja ljudi od kojih ocekujes pomoc (ok, desava se to i najboljima, takve greske mislim, ne to oko postovanje nije frka, ali u tvom slucaju ovakav create samo dodatno zamucuje stvarni problem)
ako ti je artikal_id PK onda nemas duplikate :D dakle nije posto ne bi postavljao pitanje .. sta je ID ?
ako izignorisemo pricu sa PK, kada imas duplikat, opet, po kom principu odlucujes koji ces da obrises?
kapiram da ti zelis da obrises SVE za neki artikl_id i napravis novi koji ce imati sume za sve stare artikl_id ... ako je to nesto sto treba da radis "vise puta" onda batali posao, nije za tebe, dakle "sinko tako se ne pravi avion", mora se redizajnira ceo taj sistem, ako to treba da uradis "jednom", dakle redizajniran je sistem koji je nekad neki komsijin sin "dizajnirao" i greske su pronadjene i opravljene ali je data u .!. i sada mora nekako na misice da se dovede u konzistentno stanje, onda lepo rename te tabele u "tabela_smece", create nove tabele sa kljucevima kako treba i onda jedan insert select i kada proveris da je sve ok drop "tabela_smece" i resen problem... obizirom da problem resavas jednom da li ces da ga resis iz jednog upita, iz 3 upita, iz skripte ili stored procedure who freaking cares .. posebno sto ovako presipanje iz jedne u drugu tabelu ne diras original datu dok nisi siguran da si dobi oizlaz koji zelis