小编Dir*_*kNM的帖子

像oracle一样在mysql中截断日期字段

我无法在'mysql'数据库中使用'trunc(in oracle)'函数.我在我的'mysql'数据库中有一个名为dlb_cc_purchase的表和名为due_date的日期字段.数据显示在日期字段中,如20-11-2014 00:00:00(20-nov-2014).在oracle我们正在使用查询

select * from dlbcc_purchase where trunc(due_date) = '20-nov-2014' 
Run Code Online (Sandbox Code Playgroud)

Oracle DB将获取截止日期为20-11-2014 00:00:00的行.如何在'mysql'中使用此功能?我知道这是一个基本问题,但是我试图用truncate,str_to_date很长时间来做这个...但是无法获取值.请帮忙.

mysql oracle date

15
推荐指数
2
解决办法
5万
查看次数

使用ORACLE关键字的XML模型作为反向工程时未翻译的列

我正在使用ODI将XML文件从Web服务加载到数据库中.模式文件(XSD)定义名为"share"的元素.这是oracle中的关键字.在对XML模型进行逆向工程时,ODI会将列名称设置为"SHARE".稍后在构建和执行应该将数据加载到数据库表中的映射时,ODI无法创建临时表,因为"SHARE"是oracle中的关键字.文档告诉我们,XML模式文件中的关键字将用下划线字符标记(即SELECT将重命名为SELECT_),但是很明显,关键字SHARE不是ODI使用的列表的一部分.

是否有机会扩展关键字列表或任何其他想法来解决此问题.我无法更改架构文件,因为它不在我的控制之下.

xml oracle oracle-data-integrator

12
推荐指数
1
解决办法
524
查看次数

while循环中的随机数[C编程]

我试图在每次循环发生时创建2个随机数(0-4和0-10之间),但它总是给出相同的数字.如果我多次运行程序,它会给出不同的数字,但是while循环总是生成相同的2个数字.谢谢.

int random(int range){
    int num;
    srand(time(NULL));
    num = rand() % range;
    return num;
}

int main(){

    int cnt = 0;
    int i;  
    int j;
    while (cnt <= 20) {
        i = random(5);
        j = random(10);
        printf("%d\n",i);
        printf("%d\n",j);
        printf("\n");
        cnt += 1;
    }
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c random loops

3
推荐指数
1
解决办法
6681
查看次数

Oracle SQL 最后 n 条记录

我已经通过使用 rownum 功能阅读了大量有关 Oracle SQL 中最后 n 条记录的文章,但就我而言,它没有给我正确的行。

我的表中有 3 列:1)消息(varchar)、mes_date(日期)和 mes_time(varchar2)。

假设里面有 3 条记录:

Hello world | 20-OCT-14 | 23:50
World Hello | 21-OCT-14 | 02:32
Hello Hello | 20-OCT-14 | 23:52
Run Code Online (Sandbox Code Playgroud)

我想获取按日期和时间排序的最后 2 条记录(第一行是最旧的,第二行是最新的日期/时间)

我正在使用这个查询:

SELECT * 
  FROM (SELECT message 
          FROM messages 
         ORDER 
            BY MES_DATE, MES_TIME DESC
       ) 
  WHERE ROWNUM <= 2 ORDER BY ROWNUM DESC;
Run Code Online (Sandbox Code Playgroud)

我没有将第 3 行作为第一行和第二行 #2,而是将第 1 行作为第 1 行,然后将第 #3 行作为第二行

我应该怎么做才能让较旧的日期/时间排在最前面,然后是最新的?

sql oracle

2
推荐指数
1
解决办法
3万
查看次数

在oracle查询中表示日期的更好方法

有没有更好的方法以更好的方式重新启动oracle的以下查询,下面是查询

UPDATE ABC SET STATUS='CLEAN' 
 WHERE STATUS in ('RUNNING','HALT') 
   AND START_DATE BETWEEN to_date(to_char(sysdate-1 , 'MM/DD/YYYY'),'MM/DD/YYYY') 
                      and to_date(to_char(sysdate-4 , 'MM/DD/YYYY'),'MM/DD/YYYY');
Run Code Online (Sandbox Code Playgroud)

oracle

0
推荐指数
1
解决办法
35
查看次数

标签 统计

oracle ×4

c ×1

date ×1

loops ×1

mysql ×1

oracle-data-integrator ×1

random ×1

sql ×1

xml ×1