我非常感谢有关创建新表的最佳方法的意见,该新表将是现有表的子集(基于查询结果)。
新表基于仅选择包含所选字段(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%
专家的任何意见或建议?非常感谢。
答案 0 :(得分: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
语句的逻辑。