第8页,共1,775页。 显示 17,747 条结果 (0.123 秒)
SQL在数据库工具中运行正常,但是预览数据报表达式解析错误
字符的数值通过获取ACSII码数值实现,在MySQL的SQL语句中遇到特殊字符"^"需要拼接,可以使用concat函数拼接,参考如下: select concat('[',cast(char(94) as CHAR(20)),'->]') as aa from categories limit 1 … )) from dual 2、如果sql字符串中有“\”,需要在“\”前加一个“\”对其进行转义处理,特别需要注意的是,如果是正则表达式的“\”,部分数据库需要进一步处理,用4个“\”去转义1个“\”: select replace('AA\\BBBBCCCC','AA2 更新模型
": "ShipRegion", "alias": "区域", "viewName": "orders", "fieldName": "ShipRegion", "valueType": "STRING … ## 更新数据模型 - <strong>接口调用-方式1</strong> ```java import smartbi.net.sf.json.JSONObject; import smartbi.sdk.ClientConnector; import smartbi.sdk.InvokeResultSQL数据集
distinct Card_Type_Cd as c1 from debit_card,会变成 select T2.c1 as F4 from (select distinct Card_Type_Cd as c1 from debit_card) T2 运行。 这样处理是因为在报表中需要对SQL做处理,如果使用SQL数据集 … 属性(使用时请用括号括起来) 编写SQL数据集时,支持拖动“参数”、“用户属性”、“系统函数”等对象,其他的建议手写; 不支持Select * from .....的写法; 如果有多条语句,用分号和回车隔开; 所有的Select字段需要显式给定一个别名,例如:select T1.fieldA FA fromSQL查询 的order by不起作用
(本文档仅供参考) 问题说明 我在制作报表时,SQL查询的 order by排序不起作用,请问如何解决,复制SQL在原生SQL查询中排序生效,这是为什么? 解决方案 此现象是正常的,因为SQL查询需要嵌套运行。如文本语句select distinct Card_Type_Cd as c1 from debit_card,会变成 select T2.c1 as F4 from (select distinct Card_Type_Cd as c1 from debit_card) T2 运行。这样处理是因为在报表中需要对SQL做处理,如果使用SQL查询不嵌套一层的话,就无法做到去修改原始SQL查询不能是纯SQL吗?为何要嵌套运行? 这样运行会不会降低效率
疑问说明 纯SQL问题的解答 SQL查询可以是纯SQL语句,但是如果在SQL查询中用到"参数"、"用户属性"、"系统函数"等系统资源,必须把资源拖到SQL语句对应的位置,不能手写。包含这类资源的SQL查询就不是纯SQL。 嵌套问题的解答 SQL查询需要嵌套运行。如文本语句select distinct Card_Type_Cd as c1 from debit_card,会变成 select T2.c1 as F4 from (select distinct Card_Type_Cd as c1 from debit_card) T2 运行。这样处理是因为在报表中需要对SQL做处理,如果使用SQL查询不嵌套一层的话,就无法SinoDB数据连接
', '%Y-%m-%d') and T0.RequiredDate <= to_date('2016-02-29', '%Y-%m-%d') then '2016年2月' else '其他' end ) as c0 from informix.orders as T0 不支持: select (case when T0.OrderDate >= to_date('2016-01-01','%Y-%m-%d') and T0.OrderDate <= to_date('2016-12-31', '%Y-%m-%d') then '2016年' else T0.OrderDate end) as c0 from informix.orders开窗函数
。 SELECT date, sales, last(date) OVER (PARTITION BY sales_department ORDER BY date) AS last_sale_date FROM sales; ②last_value(column_name) OVER (PARTITION … ) AS max_salary FROM employee; 3 lag(input[, offset[, default]]), 函数说明:返回偏移前面的值。返回窗口中当前行之前的第二行的输入值。偏移量的默认值为1,默认值为null。如果offseth行的input值为null,则返回如何正确设置模型关系
、一对多还是多对多的联系。 那其实Smartbi产品上可通过"自动检测表关系"或手动点击"检测关系"的功能来辅助我们确定两表之间的关系。它检测的原理是: 逐个判断查询相同别名的字段列,是1还是多;当count()的数量和distinct count()的数据不一致,说明该列是"多",否则为"1"。 例如:orders 与orderDetail 表,关联字段是OrderID,当orders 的count()与distinct count(OrderID),是一致的,则认为是"一"的一方;当orderDetail的count()与distinct count(OrderID)不是一致时,则认为是"多"的一方。 注意:这个检测方法【上篇】02月-99% 的人都忽略了!强大模型的崛起秘密在于设置正确关系
别名的字段列,是1还是多;当count()的数量和distinct count()的数据不一致,说明该列是"多",否则为"1"。 例如:orders 与orderDetail 表,关联字段是OrderID,当orders 的count()与distinct count(OrderID),是一致的,则认为是"一"的一方 … 查询时模型是如何根据设置的关联进行查询的(敲黑板!!这里还涉及一个子图命中的概念需要大家了解了解),基于这些逻辑来辅助咱们梳理模型关系应该怎么设置得到一个更加强大有趣的数据模型。 接下来咱就来开启模型关系小课堂吧。 worddav4e1b68b7242590cdd2ea44236ea2caa5.png 什么ETL通过公共参数和in关键字过滤数据
1. 应用场景 在ETL的数据查询或者关系数据源中使用in关键字进行参数过滤。 select * from `cars` where `type` in ('德系','法系','韩系','美系','日系','自主') 2. 实现思路 1、定义公共参数public_param,设置参数默认值和备选值。注意:尽管参数值可以设置很多,但是这里建议加上limit,避免参数值过多。 image2024-8-29_13-48-9.png 2、新建ETL,并定义参数etl_param,并设置类型为参数,参数定义为public_param 3、拖拽数据查询或者关系数据源节点,在where部分添加:列 in (${etl_param