1. #1

    Registered
    19/09/05
    Posts
    1,911
    iTrader
    0
    Mentioned
    0 Post(s)

    Veld toevoegen gelijk aan het verschil van 2 andere

    via welk sql statement doe ik dit aub? ik moet een veld3 toevoegen:
    veld3 = (veld2/veld1)*20

    dit moet dan altijd en overal waar zijn, de waarden veranderen dagelijks, om niet te zeggen, om het uur...
    heb me al rot gezocht, ik zit nu bij alter table alter column, ben ik op de goede weg?


    ik moet dus een soort van excell formula geven aan een veld...
    ps: ik gebruik SQLyog als client
    no votes  

  2. #2
    Zir0h's Avatar
    Registered
    19/12/03
    Location
    Lebbeke
    Posts
    1,909
    iTrader
    48 (100%)
    Mentioned
    0 Post(s)
    Reputation
    1/5
    Waarom moet dat in uw DB komen? Veld 3 wordt afgeleid van 1 en 2, dus zit ge eigenlijk met dubbele gegevens.
    no votes  

  3. #3
    Lord Kveldulv's Avatar
    Registered
    20/05/07
    Location
    Pays des Collines
    Posts
    3,643
    iTrader
    5 (100%)
    Mentioned
    0 Post(s)
    Reputation
    0/9
    Redundant data wordt niet opgeslagen in de db tenzij bij denormalisatie blijkt dat het zo de database zou optimaliseren.

    Wat jij vraagt kan niet. Moest dat een db zijn met honderdduizenden records en zou het te zwaar blijken om de berekening in een select te doen kan je overwegen om veld3 bij te plaatsen. Maar dan moet je bij elke wijziging van 1 en 2, 3 herberekenen. Kan je nu ook wel in eenzelfde update statement.
    Ik zou het in de select doen. Iets in den aard van SELECT ((veld2/veld1)*20) AS veld3 FROM...
    no votes  

  4. #4
    Cyberkef's Avatar
    Registered
    13/08/02
    Location
    Woumen.w-vl.be
    Posts
    5,731
    iTrader
    2 (100%)
    Mentioned
    7 Post(s)
    Reputation
    3/179
    Quote Originally Posted by Lord Kveldulv View Post
    This quote is hidden because you are ignoring this member. Show
    Ik zou het in de select doen. Iets in den aard van SELECT ((veld2/veld1)*20) AS veld3 FROM...
    Idem hier
    Shinigami Sieberkev
    Your humble 9lives Forum & Discord Administrator
    no votes  

  5. #5
    dJeez's Avatar
    Registered
    17/07/02
    Location
    Sol System
    Posts
    10,064
    iTrader
    1 (100%)
    Mentioned
    0 Post(s)
    Reputation
    27/78
    Het kan gedaan worden via een trigger (die je laat uitvoeren bij inserts en updates) op je tabel, maar dat is enkel aan te raden indien dat nodig is omwille van vb. performantieredenen.
    PSN: dJeezBE - Delicious bookmarks
    Disclaimer: I am currently suffering from severe CSD (Compulsive Sarcasm Disorder). - L'onion fait la farce - Facile largire de alieno
    Pastafarian by choice
    no votes  

  6. #6

    Registered
    10/11/08
    Location
    Leuven
    Posts
    115
    iTrader
    0
    Mentioned
    0 Post(s)
    Hoe / wanneer heb je veld3 nodig..
    als dit is bij het uitlezen via bepaalde software, kan je de software dan niet desgewenst aanpassen dat de formule daar gebruikt wordt!

    of de sql aanpassen zoals hoger(SELECT ((veld2/veld1)*20) FROM) en die sql executen door het prgrm.

    ik geloof er ook niet in om het in de DB te storen, ik ken niet zoveel mensen die rechtstreeks op de DB gaan queryen om te zien welke data aanwezig is. er is altijd wel een client/prgrm..
    no votes  

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

Log in

Log in