基于机器学习的超市客户细分与营销策略分析3(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_文章底部可以扫码
2026/6/21 7:56:21
SHOW用于列出其对应父对象下的对象清单,例如:
SHOW CREATE用来打印创建某个对象的 DDL,目前(在你给的内容里):
SHOW CREATE可用于 table 和 viewSHOW CREATE MODEL(模型 DDL 打印),用于复刻模型额外注意:
SHOW CREATE TABLE当前仅支持 Flink SQL DDL 创建的表。
SHOW CATALOGSSHOW CURRENT CATALOGSHOW CREATE CATALOGSHOW DATABASESSHOW CURRENT DATABASESHOW TABLESSHOW CREATE TABLESHOW COLUMNSSHOW PARTITIONSSHOW PROCEDURESSHOW VIEWSSHOW CREATE VIEWSHOW MATERIALIZED TABLESSHOW CREATE MATERIALIZED TABLESHOW FUNCTIONSSHOW MODULESSHOW JARSSHOW JOBSSHOW MODELS在 Java 中,SHOW语句通过TableEnvironment.executeSql()执行:
TableResult)示例(与你提供的内容一致,略去 connector 细节):
StreamExecutionEnvironmentenv=StreamExecutionEnvironment.getExecutionEnvironment();StreamTableEnvironmenttEnv=StreamTableEnvironment.create(env);// show catalogstEnv.executeSql("SHOW CATALOGS").print();// show current catalogtEnv.executeSql("SHOW CURRENT CATALOG").print();// create a catalogtEnv.executeSql("CREATE CATALOG cat2 WITH (...)");// show create catalogtEnv.executeSql("SHOW CREATE CATALOG cat2").print();// show databasestEnv.executeSql("SHOW DATABASES").print();// show current databasetEnv.executeSql("SHOW CURRENT DATABASE").print();// create a tabletEnv.executeSql("CREATE TABLE my_table (...) WITH (...)");// show tablestEnv.executeSql("SHOW TABLES").print();// show create tabletEnv.executeSql("SHOW CREATE TABLE my_table").print();// show columns with LIKE filtertEnv.executeSql("SHOW COLUMNS FROM my_table LIKE '%f%'").print();// create a viewtEnv.executeSql("CREATE VIEW my_view AS SELECT * FROM my_table");// show viewstEnv.executeSql("SHOW VIEWS").print();// show create viewtEnv.executeSql("SHOW CREATE VIEW my_view").print();// show functionstEnv.executeSql("SHOW FUNCTIONS").print();// show user functionstEnv.executeSql("SHOW USER FUNCTIONS").print();// show modulestEnv.executeSql("SHOW MODULES").print();// show full modulestEnv.executeSql("SHOW FULL MODULES").print();SHOWCATALOGS[[NOT](LIKE|ILIKE)<sql_like_pattern>]LIKE:大小写敏感
ILIKE:大小写不敏感
pattern 规则沿用 MySQL:
%任意长度(可为 0)_单字符\%、\_表示字面量例子:
SHOWCATALOGS;SHOWCATALOGSLIKE'%log1';SHOWCATALOGS ILIKE'%LOG1';SHOWCURRENTCATALOG;SHOWCREATECATALOG catalog_name;输出包含 catalog 名称与属性配置,适合做“环境对照/复刻”。
SHOWDATABASES[(FROM|IN)catalog_name][[NOT](LIKE|ILIKE)<pattern>]SHOWCURRENTDATABASE;SHOWTABLES[(FROM|IN)[catalog_name.]database_name][[NOT]LIKE<pattern>]例子(官方示例风格):
SHOWTABLESFROMdb1;SHOWTABLESFROMcatalog1.db1;SHOWTABLESFROMdb1LIKE'%n';SHOWTABLESFROMdb1NOTLIKE'%n';SHOWTABLES;SHOWCREATETABLE[[catalog_name.]db_name.]table_name;输出包含:
注意:当前只支持 Flink SQL DDL 创建的表。
SHOWVIEWS[(FROM|IN)[catalog_name.]database_name][[NOT]LIKE<pattern>];SHOWCREATEVIEW[catalog_name.][db_name.]view_name;SHOWCOLUMNS(FROM|IN)[[catalog_name.]database.]table_name[[NOT]LIKE<pattern>];典型用途:
SHOWPARTITIONS[[catalog_name.]database.]table_name[PARTITION(k1=v1,k2=v2,...)];典型用途:
SHOWPROCEDURES[(FROM|IN)[catalog_name.]database_name][[NOT](LIKE|ILIKE)<pattern>];SHOW[USER]FUNCTIONS[(FROM|IN)[catalog_name.]database_name][[NOT](LIKE|ILIKE)<pattern>];SHOW[FULL]MODULES;SHOW MODULES:仅显示“启用的模块”和解析顺序SHOW FULL MODULES:显示“已加载模块 + used(true/false) 状态 + 解析顺序”很多“同名函数冲突/突然不可用”的根因,就是模块启用状态或解析顺序变化。
SHOWJARS;SHOWJOBS;注意(官方强调):
SHOW JARS/SHOW JOBS只在 SQL CLI 或 SQL Gateway 生效SHOWMODELS[(FROM|IN)[catalog_name.]database_name][[NOT](LIKE|ILIKE)<pattern>];SHOWCREATEMODEL[catalog_name.][db_name.]model_name;SHOW CREATE MODEL的输出包含:
适合:理解既有模型结构、跨库复刻模型。
当你遇到:表找不到 / 函数解析不对 / DDL 不清楚 / 分区数据缺失——按这个顺序走:
1)确认上下文
SHOWCURRENTCATALOG;SHOWCURRENTDATABASE;2)确认对象是否存在
SHOWTABLES;SHOWVIEWS;SHOWFUNCTIONS;3)对象太多就过滤
SHOWTABLESLIKE'%order%';SHOWFUNCTIONS ILIKE'%sha%';4)需要复刻/核对结构
SHOWCREATETABLExxx;SHOWCOLUMNSFROMxxx;5)分区问题
SHOWPARTITIONS xxx;6)函数冲突/不可用
SHOWFULLMODULES;SHOW/SHOW CREATE 在 Flink SQL 里不只是“看一眼”的命令,而是一套完整的元数据自检与复刻工具链:写 SQL 前先确认上下文,出问题先 SHOW 再猜,迁移环境直接 SHOW CREATE 复制 DDL,效率会高一大截。