1
OK我有三個表RegionName(Key,Name),Players(Key,Name,Seen)和regionplayers(key,regionkey,playerkey)MYSQL:根據表B中用戶的日期選擇
有更多的每個表,但它不是必要的,所以使這更容易我只包括什麼是需要的。 我有地區,一名球員可以加入一個地區,一個地區可能有很多球員,球員可以在很多地區。有1680個地區,900個參賽者和大約3500個條目將它們連接在一起。
我希望能夠找到地區,在8天以上沒有看到任何玩家。
我有什麼大氣壓是:
SELECT RegionName.*, RegionPlayer.*, Players.*
FROM RegionName
JOIN RegionPlayer
ON RegionPlayer.Regionkey= RegionName.Key
JOIN Players
ON Players.Key = RegionPlayer.Playerkey
WHERE
(Seen <= (NOW() - INTERVAL 8 DAY )))
AND RegionName.Perent = 'none'
ORDER BY `RegionName`.`Name` ASC,
Players.Seen DESC
目前我得到的所有區域,其中誰沒有見過8+天,所以如果一個區域有1名球員誰尚未看過的人,它被退回,但我只想要每個人都離開了8天以上的區域。
這是一種抽樣,如果每個表的數據,這是由我剛剛完成。因爲它更容易,然後試圖提取足夠的數據,並提供我想要的結果。
RegionName
key Name
1 regionone
2 regiontwo
3 regionthree
4 regionfouor
5 regionfive
Players
Key Name Seen
1 jack 2014-03-21 12:43:46
2 joe 2014-03-26 12:43:46
3 bob 2014-03-20 12:43:46
4 bill 2014-03-19 12:43:46
5 dave 2014-03-17 12:43:46
6 tina 2014-03-28 12:43:46
7 tony 2014-03-29 12:43:46
8 george 2014-03-15 12:43:46
9 sam 2014-03-18 12:43:46
10 frank 2014-03-18 12:43:46
RegionPlayer
key Regionkey PlayerKey
1 1 1
2 1 4
3 1 5
4 2 1
5 2 4
6 2 2
7 3 6
8 3 1
9 3 7
10 4 1
11 4 8
12 4 7
13 4 5
14 5 3
所以,我要在此基礎上的數據找回地區首域,& regionfive。
謝謝,這看起來像我想要的,有一些奇怪的結果。但是這看起來像我希望的最好的。感謝您的回答,我不認爲我曾經使用過HAVING。 – TheDuncan