[SQL] Kolommen vermenigvuldigen en output in nieuwe kolom

Pagina: 1
Acties:
  • 1.155 views sinds 30-01-2008
  • Reageer

  • M_V
  • Registratie: Maart 2001
  • Laatst online: 01-02 18:25
.... en dan dus in de huidige tabel...

Op dit moment is de enige manier waarop ik dit kan doen, het opbouwen van een compleet nieuwe tabel, waarin alle kolommen hezelfde blijven (dus gewoon select alle kolommen, berekening AS nieuwe kolom ). De laatste kolom bevat dan de operatie die ik wil uitvoeren.

Kan dit niet makkelijker ende eenvoudiger?

Even ter verduidelijking:
Naam --- Cijfer1 ----- Cijfer2
Henk --- 4 ---- 7
Piet ---- 9 ---- 6
Ik wil dan bijvoorbeeld in kolom 4 het gemiddelde krijgen en dan dus het liefst als toevoeging in de huidige tabel.

Alvast bedankt voor de hulp :)

[ Voor 8% gewijzigd door M_V op 27-08-2006 14:07 ]


  • orf
  • Registratie: Augustus 2005
  • Laatst online: 23:20

orf

UPDATE tabelnaam SET kolom4 = ((kolom1 + kolom2 + kolom4)/3)

Grote vraag is echter, waarom ga je die data opslaan. Stelregel is, dat als je data kunt herleiden of berekenen dat je het niet opslaat.

  • Janoz
  • Registratie: Oktober 2000
  • Laatst online: 13-02 11:06

Janoz

Moderator Devschuur®

!litemod

Je wilt deze afgeleide waarden dus in je tabel op gaan slaan? Het lijkt me voor de hand liggender wanneer je gewoon een view maakt of deze berekening bij het ophalen van de gegevens doet.

Ken Thompson's famous line from V6 UNIX is equaly applicable to this post:
'You are not expected to understand this'


  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

Ik ben benieuwd naar hoe je tabel eruit ziet. Ik vermoed dat je wel wat kan normaliseren, waarna de AVG-functie tot je beschikking staat :)

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


  • M_V
  • Registratie: Maart 2001
  • Laatst online: 01-02 18:25
Ik heb een vaag programma dat direct een SQL database kan inlezen. Maar dit programma is niet in staat tot het maken van dit soort berekeningen.

Het maken van een query in mysql en die inlezen is een extra stap.

Maar bedankt, ik ga het ff proberen!

  • FragFrog
  • Registratie: September 2001
  • Laatst online: 22:06
je kan het ook gewoon bij het ophalen laten doen natuurlijk :)
code:
1
2
SELECT   *, ((Cijfer1 + Cijfer2)/2) as Gemiddelde
FROM     tabel


Of kun je ook niet SQL gebruiken? :?

[ Site ] [ twitch ] [ jijbuis ]

Pagina: 1