0

我非常感谢关于创建新表的最佳方法的意见,该表将是现有表的子集(基于查询结果)。

新表基于仅选择包含所选字段 (field_name) 的前 2 个字符的 6 个条件中的任何一个(如下所示)的特定记录。所有列都是必需的。

这是我最初的查询草稿。

CREATE TABLE table_name_update
AS (SELECT *
     FROM table_name
     WHERE field_name LIKE ‘A7%
     OR A8%
     OR D0%
     OR D1%
     OR D3%
     OR E0%

专家有什么意见或建议?非常感谢。

4

1 回答 1

1

这稍微取决于您使用的 RDBMS,但一种选择是SELECT INTO

SELECT * INTO table_name_update
FROM table_name 
WHERE field_name LIKE 'A7%' OR
    field_name LIKE 'A8%' OR 
    field_name LIKE 'D0%' OR 
    field_name LIKE 'D1%' OR 
    field_name LIKE 'D3%' OR 
    field_name LIKE 'E0%'

如果使用 Oracle,请使用CREATE TABLE AS

CREATE TABLE table_name_update AS
SELECT * INTO table_name_update
FROM table_name 
WHERE field_name LIKE 'A7%' OR
    field_name LIKE 'A8%' OR 
    field_name LIKE 'D0%' OR 
    field_name LIKE 'D1%' OR 
    field_name LIKE 'D3%' OR 
    field_name LIKE 'E0%'

请注意,我还更新了您的逻辑以使用单引号和多个LIKE语句。

于 2013-07-17T01:55:52.083 回答