
正文
oracle如何抽数 oracle抽数据
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
对oracle数据库抽取指定条件的数据
用eclipse
首先在oracle文件下找到jdbc文件,里面oracle如何抽数的lib文件下有个class12.zip
在eclipse里新建个项目,建好后在左边右击那个项目图标,选择属性(最下面的),里面有个java build path,点进去,找到add external jars按键,点一下,把那个class12.zip加载进来,然后可以开始写代码了。
我的代码如下oracle如何抽数:
import java.sql.*;
public class connect {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
try{
Class.forName("oracle.jdbc.driver.OracleDriver");
}catch(ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Connection con = null;
Statement stmt = null;
ResultSet rs = null;
try{
String url="jdbc:oracle:thin:@服务器ip地址:端口号:数据库名字";
String user="用户名";
String password="密码";
String str="INSERT INTO ZZZ_2 VALUES('041110018','JHDK')";
con = java.sql.DriverManager.getConnection(url,user,password);
// 创建状态
stmt = con.createStatement();
// 执行SQL语句,返回结果集
//int rowcount = stmt.executeUpdate(str);
int j = stmt.executeUpdate("update ZZZ_2 set NAME='dbt' where ID=21");
int k = stmt.executeUpdate("delete from ZZZ_2 where ID=41110020");
rs = stmt.executeQuery("SELECT * FROM ZZZ_2");
// 对结果集进行处理
while (rs.next()) {
int id = rs.getInt("ID");
String name = rs.getString("NAME");
//Integer age = rs.getObject("age") == null ? null : rs.getInt("age");
System.out.println(id + ": " + name);
} }catch(SQLException e){
e.printStackTrace();}
// 释放资源
finally{
try{
rs.close();
}catch(SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try{
stmt.close();
}catch(SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try{
con.close();
}catch(SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
注意,上面的ip地址什么的要填对,ZZZ_2是我随便建的表,你改成自己的表名就行了
相关问答
Q1: ORACLE怎么做随机抽样
VALUE 函数的第一种形式返回一个大于或等于 0 且小于 1 的随机数;第二种形式返回一个大于或等于 LOW ,小于 HIGH 的随机数。下面是其用法的一个示例:
SQL select dbms_random.value, dbms_random.value(0,18) from dual;
VALUE DBMS_RANDOM.VALUE(0,18)
---------- -----------------------
0.05863200 12.9840987851451
Q2: sql server和oracle中如何从100万条记录中,均匀、随机的抽取5万条记录
你如果想通过这个弥补你数据结构上的问题,是不行的。因为数据库里记录存储顺序对数据库来言没有实质意义。
你的要求无论在那种数据库中都可以实现,前提是你需要增加一个序号字段,用来存储顺序号,但是一旦数据被删除你就要建一个触发器去重新生成这个顺序号!
Q3: oracle中随机抽取几组数据
方法有很多种,这里提供一例供参考:
select * from (select * from scott.emp order by dbms_random.random) where rownum11;
Q4: Oracle sql语句随机抽取一个表数据,要求:抽取数量可以给定,条件是分数字段满足100分
1、需要用到两个字符类函数instr和substr,具体用法介绍如下oracle如何抽数:
函数oracle如何抽数:字符定位函数
instr
语法:instr(待处理oracle如何抽数的字符串,需要查找的字符,开始查找的起始位置,第n次出现)
返回值:字母所在的位置,没有返回
0;
函数:字符定位函数
substr
语法:substr('要切割的值',从第几个位置开始切割,切割几位);
返回值:截取的字符串。
2、该题实现步骤,以字段a内容为'武汉一一科技公司(2009年2月注销)'为例:
第一步:先从字段a的字段第一个字符往前找左括号'('
第一次出现的位置,如下:
select
instr('武汉一一科技公司(2009年2月注销)',
'(',
1,
1)
--
9
from
dual;
第二步:从字段第一个字符开始,一直找出左括号'('的前一位就行,如下:
select
substr('武汉一一科技公司(2009年2月注销)',
1,
instr('武汉一一科技公司(2009年2月注销)',
'(',
1,
1)
-
1)
from
dual;
注:如果某某公司名称本身可能含有括号的话,建议从最后一个字符倒着往回找左括号出现第一次的位置,即
select
instr('武汉一一科技公司(2009年2月注销)',
'(',
-1,
1)
--
9
from
dual;
3、最终答案
select
select
substr(a,
1,
instr(a,
'(',
-1,
1)
-
1)
from
table
;
oracle如何抽数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于oracle抽数据、oracle如何抽数的信息别忘了在本站进行查找喔。






