Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我们可以在MySQL中从头开始使用INTO创建一个表,而不用定义create before吗?_Mysql_Sql - Fatal编程技术网

我们可以在MySQL中从头开始使用INTO创建一个表,而不用定义create before吗?

我们可以在MySQL中从头开始使用INTO创建一个表,而不用定义create before吗?,mysql,sql,Mysql,Sql,我有以下SQL构造: 我试图做的是从RBP表中提取数据,然后 直接将其创建到新表中 INSERT INTO new_table SELECT pdb_id, chain_id FROM RBP WHERE exp = "X-ray" AND header = "RNA BINDING PROTEIN/RNA" 但我得到的是: _mysql_exceptions.ProgrammingError: (1146, "Table 'MYDB.new_table' do

我有以下SQL构造:

我试图做的是从
RBP
表中提取数据,然后 直接将其创建到
新表中

INSERT INTO new_table SELECT pdb_id, chain_id FROM RBP
        WHERE exp = "X-ray" AND 
       header = "RNA BINDING PROTEIN/RNA"
但我得到的是:

_mysql_exceptions.ProgrammingError: (1146, "Table 'MYDB.new_table' doesn't exist")
是否可以在不执行此操作的情况下执行此操作

CREATE TABLE new_table (
        pdb_id char(8)
        chain_id char(2)
)

MySQL在使用
INSERT INTO。。。选择*
语法,但您可以使用
创建表。。。选择…
,如中所述。您可以从现有表中创建虚拟表(视图),如下所示:

创建视图名称作为从表名称中选择列名称,其中

在你的情况下,你可以写

创建视图名称,从RBP中选择pdb\U id、链\U id
其中exp=“X-ray”和header=“RNA结合蛋白/RNA”

谢谢,我改变了我的回答