Snowflake cloud data platform 是否可以为雪花中的变量指定默认值?
假设您正在创建两个变量,即行业和IsPrivate;您不想为IsPrivate变量指定一个值,如果不想,它应该自动将NULL作为其值。那么,我应该采取什么步骤来纠正以下查询?Snowflake cloud data platform 是否可以为雪花中的变量指定默认值?,snowflake-cloud-data-platform,Snowflake Cloud Data Platform,假设您正在创建两个变量,即行业和IsPrivate;您不想为IsPrivate变量指定一个值,如果不想,它应该自动将NULL作为其值。那么,我应该采取什么步骤来纠正以下查询? set(工业、私人)=(‘技术’) 如果您将表定义为 CREATE TABLE table (industry text, isprivate boolean); 然后用 INSERT INTO table (industry) VALUES ('Technology'); 有效 您使用单词SET使其看起来像是在对上表
set(工业、私人)=(‘技术’) 如果您将表定义为
CREATE TABLE table (industry text, isprivate boolean);
然后用
INSERT INTO table (industry) VALUES ('Technology');
有效
您使用单词SET
使其看起来像是在对上表进行更新
UPDATE table SET industry = 'Technology';
是100%有效
如果您有上表,并且希望在插入数据后更改默认值,则:
ALTER TABLE table ALTER COLUMN isprivate SET DEFUALT FALSE;
这是无效的。您需要重建表
CREATE TABLE table2 (industry text, isprivate boolean default false);
INSERT INTO table2 AS
SELECT industry
,COALESCE(isprivate , FALSE) AS isprivate
FROM table;
ALTER TABLE table2 SWAP WITH table;
DROP TABLE table2; -- now the old one.
或者只是通过合并默认读取
SELECT industry, COALESCE(isprivate , FALSE) AS isprivate
FROM table;
您是在什么上下文中执行此操作的?我有一个表,它有几个列,包括Industry和IsPrivate,IsPrivate列有一些空值,我想通过给这些变量赋值来选择数据。当设置(Industry,IsPrivate)=('Technology','Yes')时,它应该显示将技术作为Industry,将是作为IsPrivate的数据。但是当我没有给第二个变量赋值时,比如这个集合(Industry,IsPrivate)=('Technology'),它应该给出所有的数据,其中技术为Industry,null为IsPrivate,那么这是可能的吗?在设置这些变量之前,我是否可以添加一些内容?