我有一个SQL查询,可以获取5000万条记录。我想为结果中的每一行分配一个常量值,每次运行查询时都应该是不同的。
所以我决定在查询中使用系统日期。
我的查询如下:
SELECT (SYSDATE,'DD-MM-YYYY - HH:MM:SS'), column1,column2,column3
FROM my_table
但是当查询执行结束时,我在sysdate列中获得了不同的HH:MM:SS值。
有没有办法可以让它保持不变?
目前我的结果看起来像:
SYSDATE
01-03-2019 01:20:55
01-03-2019 01:20:56
01-03-2019 01:20:57
01-03-2019 01:20:58
01-03-2019 01:20:59
这是因为有太多记录,数据库需要时间来选择所有记录。您可以在开始查询之前创建一个变量来保存sysdate
,并将其与列一起选中:
SET @Date = (SYSDATE,'DD-MM-YYYY - HH:MM:SS');
SELECT @Date, column1,column2,column3
FROM my_table;