15. maj 2001 - 14:57Der er
3 kommentarer og 1 løsning
Update Query
Hej
Jeg har brug for at lave en Update Query, som ændrer værdien i et felt i en tabel, hvis værdien af et felt i _alle_ joinede records i en anden tabel opfylder et givet kriterium
Den query som er mit udgangspunkt:
UPDATE Table2 INNER JOIN Table1 ON [Table2].[joinfield]=[Table1].[id] SET Table1.field1 = Yes WHERE ((([Table2].[field1])=\'crit\'));
ændrer værdien af table1.field1 så snart et af de joinede records i table2 opfylder kriteriet.
Du skal lave et view/subquery af den tabel der skal checkes. I denne laver du en count på det felt du vil joine med og en sum på udtrykket(felt=kriterie) (Du skal lave ABS() på den hvis det er i access)-> Sum(Abs(Field1=\'crit\')) Du skal group by feltet. Det vil tælle dels antal records pr join (Count) og dem der mather (sum)
På den måde kan du i kriterei i din update sige where Count_field1=Sum_Expression
Sååå langhåret er det heller ikke. Hvis du tager det i 2 skridt (lav view først), så er det jo rimeligt overskueligt. Anyway, takke for pointene selvom jeg jo rettelig ikke har fortjent dem (-:
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.