Mysql 基于字段创建表
我有一个MySql表,大约有10万行。有一个字段表示id,其中包含1-35之间的数字。所有这些记录都属于此id范围,即所有这些记录的id列值都在1-35之间 现在我想创建另一个表,每个id有一行,即新表应该只有35行 怎么办Mysql 基于字段创建表,mysql,create-table,Mysql,Create Table,我有一个MySql表,大约有10万行。有一个字段表示id,其中包含1-35之间的数字。所有这些记录都属于此id范围,即所有这些记录的id列值都在1-35之间 现在我想创建另一个表,每个id有一行,即新表应该只有35行 怎么办 create table new_table (id int); insert into new_table select distinct id from big_table; 编辑: 您可以通过输出big_tablecreate脚本并更改名称来创建new_ta
create table new_table (id int);
insert into new_table
select distinct id from big_table;
编辑:
您可以通过输出big_table
create脚本并更改名称来创建new_table
SHOW CREATE TABLE big_table;
/* modify the name of the output and execute */
insert into new_table
select * from big_table group by id
您有一个包含100.000行的表,您需要一个包含35行的新表。其余列需要什么值 如果答案是:没关系,这是可行的:
CREATE TABLE newTable
SELECT * FROM yourTable
GROUP BY ID;
如果你只想要身份证
CREATE TABLE newTable
SELECT DISTINCT ID FROM yourTable;
您可以将数据从一个表复制到另一个甚至不同的数据库(模式),如下所示
INSERT INTO [DestDatabase].[DestTablName]
SELECT [ColumnName] FROM [SourceDatabase].[SourceTablName];
因此,您可以使用两种方法:
1:
2:
那么您想将具有特定值的表中的所有行复制到新表中吗?谢谢您的回复。但是通过这个方法,我可以得到唯一id字段的值。我想要大桌子的所有字段,但只有一次。例如,如果值为1的id有10k字段,我只希望在新的_表中有一个字段,类似于值为2的id,依此类推。有没有办法做到这一点?谢谢。事实上,我只想要新表中的这35行,不想要任何其他行。这是我正在努力解决的主要问题。有没有办法做到这一点?谢谢
INSERT INTO tbl_New
SELECT DISTINCT id from tbl_Original;
INSERT INTO tbl_New
SELECT id from tbl_Original GROUP BY id;