Importuje dane do tabeli tymczasowej tmp mam 21 wierszy, potem chce je powrzucać do odpowiednich
tabel przy jednej mam problem
Przy zapytaniu
SELECT (SELECT idsklepu FROM sklep WHERE Nazwa=sklep),
(SELECT idproduktu FROM produkty WHERE Nazwa=tmp.Produkty), Ilosc, OdKiedy, DoKiedy
FROM tmp
otrzymuję
#1242 - Subquery returns more than 1 row
przy zapytaniu
SELECT Sklep.idsklepu,Produkty.idproduktu,ilosc,Odkiedy,dokiedy
from tmp
join Sklep on Sklep.nazwa=tmp.sklep
join Produkty on produkty.nazwa=tmp.produkty
dublują mi się wyniki i wychodzi dziwny wynik wychodza 37 wierszy.. o co chodzi
natomiast przy zapytaniu
INSERT INTO sprzedaz(idsklepu, idproduktu, ilosc, OdKiedy, DoKiedy)
SELECT DISTINCT Sklep.nazwa,Produkty.idproduktu,ilosc,Odkiedy,dokiedy
from tmp
join Sklep on Sklep.nazwa=tmp.sklep
join Produkty on produkty.nazwa=tmp.produkty
wychodzą poprawnie dane ,ale chcialbym id sklepu... i niem wiem czemu muszę stosować DISTINCT w id
sklepu wstawia mi z automatu 0 jak wyciągnąć id?
Zauważyłem że nie zawsze jest poprawnie.Tabela sklep wyglada idsklepu,nazwa,idklienta
*1;;1
*2;;3
*3;;12
nawet jak zrobie takie zapytanie
SELECT sklep.idsklepu
from tmp
LEFT JOIN sklep ON
tmp.Sklep=sklep.nazwa
to pokazuje się dużo zapytań tak jakby każdy z każdym się łączył..
Można to jakoś naprawić, rozwiązać?