Disse værdier i T_TagDefinition tabellen er erklæret NOT NULL. INSERTET skal være en flettet forspørgelse, og der der skal indsættes bliver hentet vha. af et SELECT fra flere tabeller.
Men hvordan gør jeg dette i ét hug? Altså vælger 6 nøgler fra 3 tabeller og insætter dem i et hug.
Kan jeg lave flere selects efter hinanden i samme udtryk og så jeg får resultatet af ALLE selects?
Mit hovede problem er at jeg ikke har de værdier på forhånd som skal indsættes og da alle er NOT NULL kan jeg ikke nøjes med delvist at indsætte dem,...Alle skal finde smed det samme.
Håber I forstod det. Eller prøver jeg bare at forklere det igen.
Ja, det lyder til at du vil kunne gøre det med noge UNIONs. Men du skal lige sørge for at du får dataene i den rigtige orden:
INSERT INTO tabel1 (x) SELECT a FROM tabel2 ORDER BY feltnavn UNION SELECT b FROM tabel3 ORDER BY feltnavn UNION SELECT c FROM tabel4 ORDER BY feltnavn
Som jeg kan se det skal de 6 felter skal have data fra 6 forskellige tabeller. Derfor ville jeg forsøge at sikre at de var sorteret i samme orden. Og, ja - der er da noget om at ORDER BY skal til allersidst i forbindelse med UNION.
Måske sådan her:
INSERT T_TagDefinition (T_ModelId, [Name], ArrayIndex, TagBoundaryValueId, TagBoundaryGradientId, TagTypeId ) SELECT [Id] FROM T_TagBoundaryValue1 UNION SELECT [Id] FROM T_TagBoundaryValue2 UNION SELECT [Id] FROM T_TagBoundaryValue3 UNION SELECT [Id] FROM T_TagBoundaryValue4 UNION SELECT [Id] FROM T_TagBoundaryValue5 UNION SELECT [Id] FROM T_TagBoundaryValue6 ORDER BY feltnavn
SELECT (SELECT [Id] FROM T_TagBoundaryValue1), (SELECT [Id] FROM T_TagBoundaryValue2), (SELECT [Id] FROM T_TagBoundaryValue3), (SELECT [Id] FROM T_TagBoundaryValue4), (SELECT [Id] FROM T_TagBoundaryValue5), (SELECT [Id] FROM T_TagBoundaryValue6)
Synes godt om
Slettet bruger
24. september 2003 - 20:14#10
Lukketid?
Synes godt om
Slettet bruger
11. november 2003 - 22:27#11
??
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.