この質問をグーグルで検索しましたが、何も見つかりませんでした。問題はそうです:私はそのようなテーブルを持っています
CREATE TABLE IF NOT EXISTS `Hourly` (
`gmt` bigint(20) NOT NULL,
`city` int(11) NOT NULL,
`temp` float NOT NULL,
`temp_min` float NOT NULL,
`temp_max` float NOT NULL,
`pressure` float NOT NULL,
`humidity` int(11) NOT NUL`enter code here`L,
`temp_kf` float NOT NULL,
`weather` int(11) NOT NULL,
`icon` varchar(20) NOT NULL,
`clouds` float NOT NULL,
`wind_speed` float NOT NULL,
`wind_deg` float NOT NULL,
`rain_3h` float NOT NULL,
`snow_3h` float NOT NULL,
`sys_pod` varchar(255) NOT NULL,
`received` bigint(20) NOT NULL,
PRIMARY KEY (`gmt`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
gmt
問題は、どちらかではなく、両方city
が存在しない場合に新しい行を挿入したいことです。たとえば、私のテーブルはすでに
INSERT INTO `Hourly` (`gmt`, `city`, ...) VALUES
(1373446800, 1, ...)
そして、新しい行を挿入したい
INSERT INTO `Hourly` (`gmt`, `city`, ...) VALUES
(1373446800, 2, ...)
それ以外の場合は、更新する必要があります
だから、私は私の問題を説明し、何人かの「賢い人」が私を助けてくれることを願っています.