Oracle数据提到文本文档进行查询的方法

【面试攻略】Oracle中blob和clob的区别及查询修改方法 在Oracle数据库中,BLOB和CLOB是两种用于存储大量文本数据的类型。了解它们的区别以及如何在代码中查询和修改这些字段的内容,是开发人员在处理大量文本数据时必须掌握的技能。本文将为你揭示这些知识点,帮助你更好地应对面试! 阅读详情

在数据库中我运行了以下的查询语句:
    Select PLAN_ID, EL_ID, NIIN, ITEM_NAME, PROJECT_CD,
    CASE WHEN LCMC_DOC_NO IS NULL THEN MRODOC ELSE LCMC_DOC_NO END AS "DOCUMENT NUMBER"
    FROM EQLIST_VIEW
    WHERE PLAN_ID IN (736,1011)
    AND LCMC_DOC_NO IN ('W56HZV0327W501','W52H090313X006','W52H090314X026',
    'W52H090314X027','W52H090318X049','W52H090320X003','W56HZV0351M012',
    'W56HZV0351M032','W56HZV0351M035','W919AD0334L091','W919AD0334L092',
    'W919AD0352L025','W919AD0358L012','W919AD0358L017','W919AD0353L020',
    'W56HZV0350M001')
    ORDER BY NIIN, “DOCUMENT NUMBER”
    问题是这样的,现在有超过4000个DOC_NO,我想要抽取这些数据放到C盘上的一个文本文件当中。我试了好几种方法,但是系统一直出现第五行错误提示:“Syntax error near 'C'”
    于是我重新写了一边查询:
    Select PLAN_ID, EL_ID, NIIN, ITEM_NAME, PROJECT_CD,
    CASE WHEN LCMC_DOC_NO IS NULL THEN MRODOC ELSE LCMC_DOC_NO END AS "DOCUMENT NUMBER"
    FROM EQLIST_VIEW
    WHERE PLAN_ID IN (736,1011)
    AND LCMC_DOC_NO IN C:/Users/aj.moon/Desktop/TEMP/A5A_DOCNUM.TXT
    能否提供一些好的建议?
    答:你并没有说你在使用哪一个版本的Oracle数据库,那么我就先假设为Oracle 9i。第一个问题是你不能直接使用文本文件,首先你要做的是让这些数据在数据库内可用。你可以使用SQL*Loader来加载数据或者创建一个外部的表。在这里我就简单介绍一下第二种方法。

外部表可以允许Oracle查询存储在数据库之外的平面文件中的数据。SQL*Loader加载的格式化存储数据你都可以访问。针对外部表,你无法使用INSERT/UPDATE/DELETE操作,但是你可以在查询中使用它们。一旦你创建了外部表,你就可以在视图中使用它,并创建synonyms。通常情况下,使用外部表主要是为了进行ETL操作,它可以防止数据进入真实表。但是如果你打算频繁地查询外部表,就需要考虑将数据加载到真实表当中,因为外部表无法进行索引,性能将会受到比较大的影响。
    首先,创建外部表定义,然后将它引用到文件当中。此时文件必须存放在Oracle可以访问的路径下,也就是说不能够放在本地磁盘,而是需要放在你的数据库服务器路径下。然后创建一个DIRECTORY对象,指向文件路径:
    CREATE OR REPLACE DIRECTORY ext_tab_dir AS 'C:/temp/';
    然后,使用CREATE TABLE..ORGANIZATION EXTERNAL语句创建外部表元数据:
    CREATE TABLE docnum_ext
    (
    doc_no varchar2(30)
    )
    ORGANIZATION EXTERNAL
    (
    TYPE ORACLE_LOADER
    DEFAULT DIRECTORY ext_tab_dir
    ACCESS PARAMETERS
    (FIELDS TERMINATED BY ',' )
    LOCATION ('A5A_DOCNUM.TXT')
    )
    ;
    由于你没有提供文本文件的具体格式,所以我就假设是用逗号隔开的一系列值。如果你有不一样的格式,那么就需要在定义中更改ACCESS PARAMETERS,具体参考Oracle官方文档。
    创建好外部表之后,你可以用简单的查询进行测试:
    SQL> SELECT *
    2 FROM docnum_ext;
    DOC_NO
    ----------------------------
    W56HZV0327W501
    W52H090313X006
    W52H090314X026
    W52H090314X027
    W52H090318X049
    W52H090320X003
    W56HZV0351M012
    W56HZV0351M032
    W56HZV0351M035
    W919AD0334L091
    W919AD0334L092
    W919AD0352L025
    W919AD0358L012
    W919AD0358L017
    W919AD0353L020
    W56HZV0350M001
    当表的功能正常时,你可以反向查询:
    Select PLAN_ID, EL_ID, NIIN, ITEM_NAME, PROJECT_CD,
    CASE WHEN LCMC_DOC_NO IS NULL
    THEN MRODOC
    ELSE LCMC_DOC_NO
    END AS "DOCUMENT NUMBER"
    FROM EQLIST_VIEW
    WHERE PLAN_ID IN (736,1011)
    AND LCMC_DOC_NO IN (SELECT doc_no FROM docnum_ext)
    ORDER BY NIIN, "DOCUMENT NUMBER"
    ;
    以上的例子可以为你提供一定的参考,你可以修改路径和外部表定义来满足你的实际情况。希望能够成为你的最终解决方案。

学习笔记:物理信息神经网络(PINN) PINN 的强大在于它打破了传统数值方法的限制,将神经网络的非线性拟合能力与物理方程的严谨性结合起来。它在处理高维、数据稀缺、复杂物理约束的场景下尤其出色。当然,PINN 也有收敛慢、梯度消失等挑战,比如,复杂 PDE 可能导致梯度传播困难,收敛慢(梯度消失)、于具有快速变化特征的系统,如冲击波,标准 PINN 可能精度不足,需要改进策略,比如自适应采样或多尺度特征提取。但随着研究深入,这些问题正在不断被解决。物理或化学方程为什么往往是偏微分方程?什么是物理信息神经网络(PINN)?x_%7Bi%7D。 阅读详情

相关推荐

阿里云CDN HTTPS 证书配置流程

可以使用HTTPS方式访问资源,如果浏览器中URL旁边出现锁的HTTPS标识,表示HTTPS安全加速已生效。: 证书配置完成后,需要留意证书过期时间并在证书过期前手动配置新的证书。注意 ⚠️ 一定是需要复制 以下标识之间的内容。如果已在阿里云数字证书管理服务中购买了证书,请选择。,该证书将在阿里云数字证书管理服务中保存。如果使用第三方服务商签发的证书,请选择。第四步,在指定域名的左侧导航栏,单击。第二步,在左侧导航栏,单击。开关,并配置证书相关参数。页面,找到目标域名,单击。中选择已购买的证书。

w风雨无阻w的专栏 2208

C++使用文件流在文本文档中添加、修改、查找、删除特定数据

一般在c++编写的程序当中,需要在文本文档当中写入多个数据,并进行查找、修改、删除特定数据时常用数组,也可以选择不使用数组而使用文件流,但由于文件流不提供直接修改与删除的方法,这边给出一个方法供大家参考1、在文本文档当中添加数据 首先打开文件test.txt,随后可以通过定义变量来确定文本文档当中的每行保存的数据数,通过cin给变量赋值,随后ofs将变量值写入建立的文本文档中,最后通过ofs.close关闭文件。2、在文本文档中查找特定数据 对于特定文件的查找,我们需要用到文件流的读取,同时用到循环,首先输

web15286201346的博客 1819

文章详细介绍了进行DoIP(DiagnosticoverInternetProtocol)测试的完整过程,包括样件的正确接线、CANoe软件的环境配置、端口设置、VLAN配置、IP和MAC地址的设定

关于Tester和DUT的地址,其实最主要的就是DUT的IP、MAC和逻辑地址,如果不知道Tester的IP、MAC和逻辑地址,可以配置为与DUT同一网段的就可以。ps:最重的是知道DUT的IP、逻辑、MAC地址,如果有VLAN也需要知道,Tester的地址可以根据DUT地址进行设定,其余的值可根据DoIP的报文查到相关参数。ps:如果在通信中没有建立VLAN,但是源地址和目的地址都填写正确,此时就要考虑是否是遗漏了VLAN,建立一个VLAN,在重新试试是否可通信。此处与硬件连接是相对应的,要注意!

qq_40965861的博客 1128

将文本文件导入oracle数据库中

一. 使用pl/sql developer工具: 1. 数据已经准备好,存放在txt文本,并且记录行是用回车分隔,列式用逗号分隔 2. 打开pl/sql developer,选择Tools -> Text Importer 3. 在Data from Textfile视图汇总,点击窗口左上按钮(Open Data File),选择数据文本 4. 小窍门:   把txt文本里的数据最上

chen_xi_的专栏 2697

谈谈SAP顾问的几个发展趋势

大家新年好,今天想聊一下对SAP顾问发展趋势的一些个人见解。过去10多年得益于我国的经济发展,外资不断加大在中国的投资和中国企业的发展,SAP顾问行业得到了很大的发展和壮大。那么未来几年SAP顾问的职业发展到底怎么样呢?

syounger的专栏 2511

用FSL的eddy_topup pipeline完整处理DTI数据:从原理到实战,搞定涡流和磁化率畸变

本文详细介绍了如何使用FSL的eddy_topup pipeline完整处理DTI数据,解决涡流和磁化率畸变问题。从原理到实战,涵盖了数据格式转换、脑提取、b0图像处理等关键步骤,并提供了acqparams.txt配置和eddy命令的详细解析,帮助研究人员高效完成DTI数据校正。

weixin_29235525的博客 282

oracle查询文本,Oracle数据提到文本文档进行查询的方法

在数据库中我运行了以下的查询语句:SelectPLAN_ID, EL_ID, NIIN, ITEM_NAME, PROJECT_CD,CASEWHENLCMC_DOC_NOISNULLTHENMRODOCELSELCMC_DOC_NOENDAS"DOCUMENTNUMBER"FROMEQLIST_VIEWWHEREPLAN_IDIN(736,1011)ANDLCMC_DOC_NOIN('W56HZ...

weixin_35837047的博客 273

我花3年踩坑总结的C#上位机开发指南:从零基础到项目落地(附实战案例)

串口乱码:编码格式不匹配,一定要和设备端确认;PLC连接超时:检查IP地址和端口,确保上位机和PLC在同一网段;界面卡死:耗时操作没开线程,WinForm用BackgroundWorker,WPF用Task;数据解析错误:寄存器地址算错(Modbus地址从0还是1开始);Modbus数据丢包:加CRC校验,重要数据重发机制;WPF绑定不生效:忘记实现INotifyPropertyChanged;项目打包失败:缺少依赖DLL,用Dependency Walker检查;现场环境不兼容。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 1835

oracle查第五行数据不使用,Oracle数据提到文本文档进行查询的方法

在数据库中我运行了以下的查询语句:SelectPLAN_ID, EL_ID, NIIN, ITEM_NAME, PROJECT_CD,CASEWHENLCMC_DOC_NOISNULLTHENMRODOCELSELCMC_DOC_NOENDAS"DOCUMENTNUMBER"FROMEQLIST_VIEWWHEREPLAN_IDIN(736,1011)ANDLCMC_DOC_NOIN('W56HZ...

weixin_39707168的博客 207

安卓/苹果/支付宝sdk拉起支付宝h5/app支付

代码】安卓/苹果/支付宝sdk拉起支付宝h5/app支付。

m0_68973987的博客 5383

RabbitMQ高级特性 - 生产者消息确认机制

为了保证信息 从生产者 发送到 队列,因此引入了生产者的消息确认机制.通过事务机制实现.通过发送确认机制(confirm 和 return)实现.因为事务机制比较消耗性能,在实际工作中用的也不多,因此这里主要介绍confirm 和 return机制来实现发送放的确认.a)confirm 确认模式如上图,confirm 确认模式主要保障于 生产者 到 交换机 的消息可靠性.如果 Exchange成功收到消息,那么 ConfirmCallback 这个回调 ack 参数就为true。

CYK_byte的博客 1885

oracle查询文本,Oracle数据谈到文本文档进行查询的方法

当前位置:我的异常网» 数据库»Oracle数据谈到文本文档进行查询的方法Oracle数据谈到文本文档进行查询的方法www.myexceptions.net网友分享于:2015-08-26浏览:0次Oracle数据提到文本文档进行查询的方法在数据库中我运行了以下的查询语句:Select PLAN_ID, EL_ID, NIIN, ITEM_NAME, PROJECT_CD,CASE W...

weixin_31133021的博客 261

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

oracle clob java转换_oracle数据库中将clob字段内容利用java提取出至文本文档中

代码段:1.执行clob转Stringpublic static String ClobToString(Clob sc) throws SQLException, IOException {String reString = "";Reader is = sc.getCharacterStream();// 得到流BufferedReader br = new BufferedReader(is...

weixin_36294852的博客 431

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

Oracle中的数据导出(3)

Oracle中的数据导出(3)~桌面实现自动化执行导出数据

m0_71406734的博客 1719

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

数据库是clob数据java怎样获取_oracle数据库中将clob字段内容利用java提取出至文本文档中...

代码段:1.执行clob转Stringpublic static String ClobToString(Clob sc) throws SQLException, IOException {String reString = "";Reader is = sc.getCharacterStream();// 得到流BufferedReader br = new BufferedReader(is...

weixin_42544838的博客 354

Oracle中的数据导出(4)

Oracle中的数据导出(4)~数据导入表

m0_71406734的博客 8737

获取Oracle用户下所有的表和每张表的数据量

通过编写代码块,获取Oracle中每张表的数据量

qq_45782349的博客 1万+

Oracle中的数据导出(2)

Oracle中的数据导出(2)~使用SPOOL命令脚本文件

m0_71406734的博客 969

java oracle 增删改查_java实现oracle数据库中表的增删改查功能,并且有界面,急!...

展开全部编写proc程序实现对account账户,trans_record交易记录进行相应操作。account (id,name,balance)trans_record (id, trans_date,record,balance)添加新32313133353236313431303231363533e78988e69d8331333332623364账户,查询,更新,查询一段时间内交易记录。将...

weixin_39725650的博客 120

oracle数据库中将clob字段内容利用java提取出至文本文档中

代码段:   1.执行clob转String public static String ClobToString(Clob sc) throws SQLException, IOException {   String reString = "";   Reader is = sc.getCharacterStream();   // 得到流   BufferedReader br =...

weixin_30872733的博客 245

解决Win10运行Go程序出现Oracle报错:ORA-01804

成功解决Window10运行Go程序出现Oracle报错:ORA-01804 (1)为time.Time类型字段赋予CST零值 (2)安装完整版Oracle数据库

Antonyzeus的博客 1735

oracle 将excel数据导入多个表,5种从Excel数据导入Oracle方法

最近同事遇到了每天手工导入Excel数据到Oracle的问题,他目前的操作是使用PL/SQL Developer中的复制粘贴方法,这样每天都需要进行手工的操作,很明显长期下来的工作量是比较大的,于是找了几种可供使用的导入方法:一、直接使用SQL*Loader导入SQL*Loader是Oracle自带的数据加载工具,其数据导入比较专业,有各种参数及选项可供选择,经常是作为数据仓库中大型数据的导入方法...

weixin_39732866的博客 773
上一篇: oracleRMAN备份与恢复笔记
下一篇: 快速掌握Oracle数据库中的like优化-性能调优
JavaMan_KA
博客等级 码龄16年 12粉丝 18原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值