Php 从现有的table1 mysql创建表
在mysql中有没有一种方法可以实现下面这样的功能Php 从现有的table1 mysql创建表,php,mysql,Php,Mysql,在mysql中有没有一种方法可以实现下面这样的功能 如果表存在,则使用where条件插入表1中的数据 若表不存在,则使用相同的架构和数据创建新表 在给定where条件下 将根据PHP代码的某些条件生成新表 需要查询一下 我试过下面这样做,但不起作用。我知道mysql中有一些方法可以通过一些好的查询来实现这一点 CREATE TABLE SCHEMA.new_accounts if not exists AS ( SELECT * FROM SCHEMA.accounts) WITH NO DAT
CREATE TABLE SCHEMA.new_accounts if not exists AS ( SELECT * FROM SCHEMA.accounts) WITH NO DATA
下面是我的工作:
CREATE TABLE IF NOT EXISTS `new_accounts` LIKE `accounts`;
对于数据插入,您可以在sql下运行,条件是:
INSERT INTO `new_accounts` SELECT * FROM `accounts` WHERE column=1;
希望这能在某种程度上解决您的问题。这可能是重复的:@RameshMhetre它不是该问题的重复,因为在该问题上,我看不到创建表的任何if条件。我知道如何像创建另一个表一样创建表,但如果条件不是,我就无法像创建表那样创建表
创建表`new\u accounts`如果不存在,比如`accounts`
您要查找的内容,几乎完全一样,重复链接?在我的数据库帐户表中,每次都存在,但新的\u帐户将使用相同的模式和基于查询的某些模式创建,如不存在,则创建表new \u accounts作为select*from accounts,其中id>=100,否则插入到new \u accounts作为select*from accounts,其中id>=100谢谢回复,这对我来说也是可行的,但我正在寻找将两个查询组合成单个查询的方法。这可能吗?我认为这是不可能的。我建议检查应用程序代码中的条件,而不是sql。您可以在此处检查另一个线程: