Avatar billede tinaw25 Nybegynder
30. oktober 2013 - 15:55 Der er 4 kommentarer og
1 løsning

Er det ikke muligt at vise et ID og hvad det evt indeholder i en ordre??

Hejsa

Jeg har en tabel der hedder ordre og en der hedder ordre_linie.

Jeg vil godt have vist indholdet af begge tabeller, men den skal ikke have duplicates med ved ordre id, jeg vil godt have det til at se sådan ud:

Ordre id: 51
Navn:
    Ting 1
    Ting 2

Total pris: 500 kr.

Men når jeg udskriver får jeg:

Ordre id: 51
Navn: Ting 1
Total pris 500 kr.

Ordre id: 51
Navn: Ting 2
Total pris 500 kr.

Jeg har prøvet det her:
SELECT * FROM ordre_linie INNER JOIN ordre ON ordre_linie.fk_ordre_id = ordre.ordre_id INNER JOIN dage ON ordre_linie.fk_dag_id = dage.dag_id INNER JOIN kurve ON ordre_linie.fk_kurve_id = kurve.kurve_id WHERE ordre.ordre_id = ordre_id"

Men kan ikke få det til at virke
Avatar billede cht22 Professor
30. oktober 2013 - 16:50 #1
Du kan nøjes med:

SELECT *,SUM(price) as TOTAL FROM ordre_linie WHERE fk_ordre_id=51

Eller evt.:

SELECT navn,SUM(price) as TOTAL FROM ordre_linie WHERE fk_ordre_id=51
Avatar billede tinaw25 Nybegynder
30. oktober 2013 - 17:08 #2
Men jeg kan jo ikke vide at den ordre altid hedder 51??

så skal den så hedde WHERE fk_ordre_id = fk_ordre_id
Avatar billede cht22 Professor
30. oktober 2013 - 17:21 #3
Ja det er nok rigtigt det kommer an på hvad det er du vil have vist. Hvis du henter fra to tabeller samtidig så skal du have tabelnavnene med. Så er det nok sådan her det skal være:

SELECT ordre_linie.navn,SUM(ordre_linie.price) as TOTAL FROM ordre,ordre_linie WHERE ordre_linie.fk_ordre_id = ordre.ordre_id
Avatar billede tinaw25 Nybegynder
30. oktober 2013 - 17:24 #4
Det er sådan jeg har nu:
<asp:SqlDataSource ID="nyheder" runat="server" ConnectionString="<%$ ConnectionStrings:ConnectionString %>" SelectCommand="SELECT * FROM ordre_linie INNER JOIN ordre ON ordre_linie.fk_ordre_id = ordre.ordre_id INNER JOIN dage ON ordre_linie.fk_dag_id = dage.dag_id INNER JOIN kurve ON ordre_linie.fk_kurve_id = kurve.kurve_id WHERE ([ordre_id] = @ordre_id)" >
               
                  <SelectParameters>
                    <asp:QueryStringParameter Name="ordre_id" QueryStringField="ordre_id" Type="Int32" />
                </SelectParameters>
                 

            </asp:SqlDataSource>

Jeg kommer fra en anden side, som linker mig en på det ordre_ID jeg vil vise hvad indeholder.

Men hvis jeg så i en repeater gør dette her:

<asp:Repeater ID="Repeater1" runat="server" DataSourceID="nyheder">
     
           
            <ItemTemplate>
             
                    <tr>
                        <td><p>Leveringsdag:</p></td>
                        <td><p><%#Eval("dag_navn") %></p></td>

                    </tr>
           
                     
             
               

               

            </ItemTemplate>

        </asp:Repeater>

Skriver den det sådan ud på siden

Leveringsdag: Onsdag
Leveringsdag: Onsdag

Der hvor der er dobbeltgængere vil jeg egenlig bare have det eval engang så der bare står

Leveringsdag: Onsdag
Avatar billede tinaw25 Nybegynder
30. oktober 2013 - 18:22 #5
Jeg lavede 3 repeater så fik jeg det jeg ønskede, nok ikke optimalt men det virkede
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester



IT-JOB