Mysql 将一个表中的所有列插入另一个表中
我试图将多个列及其数据从一个表插入到另一个表中,而不使用公共列(我希望结果中会出现叉积)。 我不确定这是怎么可能的,因为这两个表中的每一个都有不同数量的列,这就排除了它们的并集。 我尝试了Create..Select创建第三个表,其中包含两个表中的所有列,但不确定语法(不断抛出语法错误) 两个表的语法:Mysql 将一个表中的所有列插入另一个表中,mysql,insert,merge,Mysql,Insert,Merge,我试图将多个列及其数据从一个表插入到另一个表中,而不使用公共列(我希望结果中会出现叉积)。 我不确定这是怎么可能的,因为这两个表中的每一个都有不同数量的列,这就排除了它们的并集。 我尝试了Create..Select创建第三个表,其中包含两个表中的所有列,但不确定语法(不断抛出语法错误) 两个表的语法: CREATE TABLE `t_modul` ( `ID` int(11) NOT NULL, `Seriennummer` int(11) DEFAULT NULL, `Bezei
CREATE TABLE `t_modul` (
`ID` int(11) NOT NULL,
`Seriennummer` int(11) DEFAULT NULL,
`Bezeichnung` varchar(128) DEFAULT NULL,
`StandortID` int(11) NOT NULL,
`Firmwareversion` varchar(8) DEFAULT NULL,
`Optionen` int(11) DEFAULT NULL,
`Feldstärke` int(11) DEFAULT NULL,
`Platziert` bit(1) DEFAULT NULL,
`Sendeintervall` int(11) DEFAULT NULL,
`Batteriekapazitaet` int(11) DEFAULT NULL,
`Modulzusatzinfo` varchar(255) DEFAULT NULL,
`ModulUserinfo` varchar(128) DEFAULT NULL,
`ReadOutDate` varchar(40) DEFAULT NULL,
`ReduktionsIntervall` int(11) DEFAULT NULL,
`Startdatum` varchar(40) DEFAULT NULL,
`SAMTemperaturEin` double DEFAULT NULL,
`SAMTemperaturAus` double DEFAULT NULL,
`SAMCoolingOff` int(11) DEFAULT NULL,
`SAMCoolingOn` int(11) DEFAULT NULL,
`SAMCoolingOffMax` double DEFAULT NULL,
`SAMCoolingOnMin` double DEFAULT NULL,
`SAMParameterField` int(11) DEFAULT NULL,
`SAMIsAlarmMelder` bit(1) DEFAULT NULL,
`SAMNv27` int(11) DEFAULT NULL,
`Hardwarekonfiguration` int(11) DEFAULT NULL,
`Anwendungskonfiguration` int(11) DEFAULT NULL,
`Logkonfiguration` int(11) DEFAULT NULL,
`Archivsendezeit_0` int(11) DEFAULT NULL,
`Archivsendezeit_1` int(11) DEFAULT NULL,
`IsLogger` bit(1) DEFAULT NULL,
`Datenpunktkennung` varchar(128) DEFAULT NULL,
`TTRFtpARCHPollDoneDate` varchar(40) DEFAULT NULL,
`Repeaternummer` int(11) DEFAULT NULL,
`StammdatenID` int(11) DEFAULT NULL,
PRIMARY KEY (`ID`),
KEY `ID_Standort_idx` (`StandortID`),
CONSTRAINT `ID_StandOrt` FOREIGN KEY (`StandortID`) REFERENCES `t_standorte` (`ID`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
CREATE TABLE `sensors` (
`sensorID` bigint(11) NOT NULL,
`Number` bigint(20) unsigned NOT NULL,
`ValueIDs` text NOT NULL,
`MeasureTime` datetime NOT NULL,
`StartTime` datetime NOT NULL,
`Configuration` int(10) unsigned NOT NULL,
`LogCycle` int(11) NOT NULL,
`Alarms` text NOT NULL,
`AlarmType` int(11) NOT NULL,
PRIMARY KEY (`GesySenseID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
联合查询:
CREATE TABLE sensors_1
SELECT * FROM `sensors`
UNION
SELECT * FROM `t_modul`;
有人能帮我吗
谢谢这个答案对我来说很有用:
CREATE TABLE sensors_1
AS (SELECT * FROM `sensors`
UNION
SELECT * FROM `t_modul`);
创建表t_交叉结果作为
挑选*
从t_modul CROSS JOIN sensors将您尝试的查询添加到问题中。同时添加示例数据。我已经完成了这些!!!