Mam takie tabele:
CREATE TABLE IF NOT EXISTS `nuke_bbgames` ( `game_id` mediumint(8) NOT NULL AUTO_INCREMENT, `game_pic` varchar(50) NOT NULL, `game_desc` varchar(255) NOT NULL, `game_highscore` int(11) NOT NULL DEFAULT '0', `game_highdate` int(11) NOT NULL DEFAULT '0', `game_highuser` mediumint(8) NOT NULL DEFAULT '0', `game_name` varchar(50) NOT NULL, `game_swf` varchar(50) NOT NULL, `game_scorevar` varchar(30) NOT NULL, `game_type` tinyint(4) NOT NULL DEFAULT '0', `game_width` mediumint(5) NOT NULL DEFAULT '550', `game_height` varchar(5) NOT NULL DEFAULT '380', `game_order` mediumint(8) NOT NULL DEFAULT '0', `game_set` mediumint(8) NOT NULL DEFAULT '0', `arcade_catid` mediumint(8) NOT NULL DEFAULT '1', `data` int(11) DEFAULT NULL, KEY `game_id` (`game_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin2 AUTO_INCREMENT=775 ; -- -- Zrzut danych tabeli `nuke_bbgames` -- INSERT INTO `nuke_bbgames` (`game_id`, `game_pic`, `game_desc`, `game_highscore`, `game_highdate`, `game_highuser`, `game_name`, `game_swf`, `game_scorevar`, `game_type`, `game_width`, `game_height`, `game_order`, `game_set`, `arcade_catid`, `data`) VALUES (29, 'alias3mp.gif', 'Strzelaj w obcych', 119458, 1216491687, 462, 'Wojownik', 'alias3mp.swf', 'alias3mp', 4, 500, '500', 130, 57, 2, NULL), (28, 'yeti_gorez.gif', 'Odbij pingwinem, najlepiej jak wpadnie na miny:)', 13373, 1261787939, 568, 'Odbij pingwindem 2', 'yeti_gorez.swf', 'yeti_gorez', 4, 500, '320', 120, 335, 1, NULL), (146, 'crashcurl.gif', 'Jak dalego potrafisz wybić manekina ?', 2922, 1203940710, 1018, 'Lot manekinem:P', 'crashcurl.swf', 'crashcurl', 4, 650, '380', 1170, 52, 2, NULL),
ORAZ
CREATE TABLE IF NOT EXISTS `nuke_bbscores` ( `game_id` mediumint(8) NOT NULL DEFAULT '0', `user_id` mediumint(8) NOT NULL DEFAULT '0', `score_game` int(11) NOT NULL DEFAULT '0', `score_date` int(11) NOT NULL DEFAULT '0', `score_time` int(11) NOT NULL DEFAULT '0', `score_set` mediumint(8) NOT NULL DEFAULT '0', KEY `game_id` (`game_id`), KEY `user_id` (`user_id`) ) ENGINE=MyISAM DEFAULT CHARSET=latin2; -- -- Zrzut danych tabeli `nuke_bbscores` -- INSERT INTO `nuke_bbscores` (`game_id`, `user_id`, `score_game`, `score_date`, `score_time`, `score_set`) VALUES (28, 2, 7723, 1142782613, 259, 3), (589, 427, 182778, 1210456920, 555, 1), (28, 12, 7673, 1142761920, 318, 1), (28, 13, 4984, 1142789662, 217, 2),
Jak widać w tabeli :nuke_bbgames są zapisywane gry,
a w tabeli nuke_bbscores wyniki użytkowników w tych grach.
Otóż zrobiłem drobną modyfikację i dopiero dzisiaj do tabeli nuke_bbgames dołożyłem pole data
(Dlatego wszędzie jest wpisane NULL)
Dołożyłem te pole, gdyż jest mi potrzebna data dodania gry, i od dzisiaj przy dodawaniu nowej gry, skrypt będzie generował tę datę, ale kiedyś o tym nie myślałem
ZADANIE:
Chciałbym teraz aby najwcześniejsza data, która jest w tabeli nuke_bbscores skopiowała się do tabeli nuke_bbgames do pola data.
Czyli do Gry o ID 28, było by coś takiego:
UPDATE `nuke_bbgames` SET `data` = '1142761920' WHERE `game_id` =28
Data ma być ta:1142761920', gdyż jest wcześniej niż 1142782613, czy 1142789662
Aby uzyskać najmłodszą datę wymyśliłem coś takiego:
SELECT `score_date` FROM `nuke_bbscores` WHERE `game_id`=28 ORDER BY `score_date` ASC LIMIT 1
Tylko co teraz zrobić, aby tę datę wpisać do tabeli nuke_bbgames do pola data
Czy da się ułożyć jakieś zapytanie do Bazy, albo napisać jakiś prosty skrypcik php, aby wykonało to się automatycznie?
EDITED:
Zrobiłem za pomocą pętli:
Chodziło mi o takie coś:
for ($i=1;$i<=596;$i++ ) { $zap_czas = "SELECT `score_date` FROM `nuke_bbscores` WHERE `game_id`=$i ORDER BY `score_date` ASC LIMIT 1" ; $czas=$czas[0]; }