---
title: "Ändra flagga i tabell beroende på summa i annan tabell!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/databaser-sql/156459-ändra-flagga-i-tabell-beroende-på-summa-i-annan-tabell"
topic: "Databaser & SQL"
topic_url: "https://www.webforum.nu/amne/databaser-sql"
author: "Fraggel"
published: "2007-01-27T10:30:02.000Z"
updated: "2007-01-27T16:22:14.000Z"
replies: 2
views: 486
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/databaser-sql/156459-ändra-flagga-i-tabell-beroende-på-summa-i-annan-tabell"
---

# Ändra flagga i tabell beroende på summa i annan tabell!

## #1 — Fraggel, 2007-01-27T10:30Z

Tabell 1

gID   - Key
tID
turn
tableNbr
created
edited
played

Tabell 2
pID  - Key
gID  - Key
score

Detta är en DB för att hantera lottningar av turneringar
Tabell 1
gID = game ID
tID = tournament ID
turn = omgång i turneringen
tableNbr = nummer på det bord som matchen spelas vid
created och edited = tidsangivelser
played = True or False beroende på om matchen är spelad eller inte

Tabell 2
gID = game ID
pID = player ID
score = resultata för den aktuella spelare i matchen

för varje match som lottas skapas en rad i tabell 1 och två rader i tabell 2, en rad för vajre spelare i den aktuella matchen.

Exempel
tabell 1
gID,tID,turn,tableNbr,created,edited,played
10,1,1,3,2007-01-26 07:55:01,,False
11,1,1,3,2007-01-26 07:55,02,,False

tabell 2
 gID,pID,score
10,15,7
10,31,1
11,34,12
11,32,3

match 10 är korrekt rapporterad och match 11 är det inte!

I detta exempel så vill jag ha en verifiering på att poängne fyllt i korrekt och detta vill jag lösa genom att enkelt kolla samtliga matcher i en viss omgång i en viss turnering. Är den korrekt rapporterad så skall summan av fältet score för båda spelarna i den aktuella matchen vara antingen  \<=8 eller = 12. kan jag enkelt lösa detta med EN UPDATE eller måste jag stega mig fram i forlopar, det rör sig om kanske 50 - 100 rader i varje batch!

Tips någon!

Permalänk: https://www.webforum.nu/p/156459

## #2 — emission, 2007-01-27T15:57Z

En av många varianter:

```
UPDATE tabell1 SET correct=1 WHERE gId IN (
SELECT gID FROM tabell2 
GROUP BY gID
HAVING SUM(score)=12 OR SUM(score)<=8
)
```

..och du kan lägga till lite extra kriterier för att begränsa

Permalänk: https://www.webforum.nu/p/1927095

## #3 — Fraggel, 2007-01-27T16:22Z

Det jag missade var HAVING det är ett nytt begrepp för mig!

Har inte testat detta ännu 

Återkommer

Permalänk: https://www.webforum.nu/p/1927103

---

Tråden på webben: https://www.webforum.nu/amne/databaser-sql/156459-ändra-flagga-i-tabell-beroende-på-summa-i-annan-tabell
