Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno SQL v MS Access

Jednak jsem zjistil, že ty zbytky paměti jsou chabé a chyběl tam Select pro výběr hodnoty 3-[

UPDATE auto_vypis SET ridic = 
(SELECT DISTINCT id  FROM spravci 
     WHERE auto_vypis.ridic = spravci.surename)
WHERE auto_vypis.ridic <> "volno" AND EXISTS   
  (SELECT id FROM spravci 
     WHERE auto_vypis.ridic = spravci.surename);
proto se objevil původně ten dialog na doplnění spravci.id. Po doplnění mi to zase řve, že příkaz není spustitelný (patrně kvůli 1:N), co je sice pravda lidí se stejným příjmením je více, ale DISTINCT by to snad měl odfiltrovat a vrátit jen jednu hodnotu.

Zkoušel jsem to i s
SET ridic = (SELECT min( id)  FROM spravci 
   WHERE auto_vypis.ridic = spravci.surename 
   GROUP BY surename)
Výsledek je stejný.

Po doplnění tabulky spravci do návrhového zobrazení a nastavení relace mezi ridic a surename dostanu
UPDATE auto_vypis 
INNER JOIN spravci ON auto_vypis.ridic = spravci.surename 
SET auto_vypis.ridic = 
        (SELECT DISTINCT spravci.id  
         FROM spravci WHERE auto_vypis.ridic = spravci.surename)
WHERE (((auto_vypis.ridic)<>"volno") AND 
((Exists 
(SELECT id FROM spravci 
  WHERE auto_vypis.ridic = spravci.surename))<>False));
spuštění končí stejnou chybou.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny