sql - SQLPlus 中的情况
问题描述
我仍在学习 SQLPlus,我正在尝试使用另一个名为的表(如果有帮助,Oracle DB 12c)DM_Businees
中的数据填充一个名为的表。Business
在INSERT INTO
我提出的查询中,除其他外,这个:
CASE
WHEN BUSINESS.CATEGORIES LIKE '%Event%' THEN 'Event Planning'
WHEN BUSINESS.CATEGORIES LIKE '%Financial%' THEN 'Financial Services'
WHEN BUSINESS.CATEGORIES LIKE '%Home%' THEN 'Home Services'
WHEN BUSINESS.CATEGORIES LIKE '%Professional%' THEN 'Professional Services'
ELSE 'OTHER'
END
我的目标是检查 中的列Categories
:Business
如果它包含“事件”一词,则在 中的列中写入“事件计划” DM_Business
。问题是它不起作用:它没有显示任何错误,但每一行都是空的。
我尝试过同样的事情,但是用数字代替(比如 1 代替“活动策划”,2 代替“金融服务”,3 代替“家庭服务”......)并且它工作得很好(列数据类型是 varchar2(200)
)。
你能帮我么?非常感谢。
解决方案
列中的数据是什么样的?Oracle 区分大小写。您可以尝试使用 upper() 或 lower() 进行测试。您可能还想明确检查 null
类似于:
CASE
WHEN BUSINESS.CATEGORIES IS NULL THEN 'UNDEFINED'
WHEN UPPER(BUSINESS.CATEGORIES) LIKE '%EVENT%' THEN 'Event Planning'
WHEN UPPER(BUSINESS.CATEGORIES) LIKE 'FINANCIAL' THEN 'Financial Services' ...
推荐阅读
- python-2.7 - Python-2.7 NLTK 使用来自类类型 nltk.Text 的数据保存和打开文件
- mysql - Active Record 无法在 5.000 秒内获得数据库连接
- javascript - 渲染前保存画布的dataImage
- python - 如何在非符号张量上构建和训练模型(我需要在解码器函数中将张量转换为 numpy)
- java - 春天杰克逊地图反序列化
- javascript - 来自 THREE.js 中 RectAreaLight 的倾斜光
- powerbi - Power BI 显示两个日期之间的数据
- xml - 使用 Powershell 合并多个子文件夹中的多个 XML
- javascript - Python 正则表达式:使用 new Array() 的 JavaScript 字符串创建 pandas 数据框
- css - Bootstrap 4 样式仅左列