我正在尝试使用oracle中的SYSDATE
函数获取系统日期,但我一直得到的结果等于表中我要求系统日期的行数
这是我的代码的样子:
SELECT TRUNC(SYSDATE)As Currnt_Time FROM TABLE_NAME
这是我的输出:
结果显示当前时间N次,我只想让它显示一次
答案 0 :(得分:6)
select trunc(SYSDATE)as CURRNT_TIME from TABLE
where rownum < 2;
DUAL只有1列,一行。所以你会得到一个答案。
您要求在表上运行select,因此它将应用于所有行,除非您提供谓词。
所以你可以做到这一点,但不要这样做。
from django.db import models
from django.contrib.auth.models import User
class Kategoria(models.Model):
name = models.CharField(max_length=250, verbose_name='Kategoria')
slug = models.SlugField(unique=True,verbose_name='Adres SEO')
parent = models.ForeignKey('self', blank=True, null=True, related_name='children', on_delete=models.CASCADE)
class Meta:
unique_together = ('slug', 'parent',)
verbose_name = 'Kategoria'
verbose_name_plural = 'Kategorie'
def __str__(self):
full_path = [self.name]
k = self.parent
while k is not None:
full_path.append(k.name)
k = k.parent
return ' / '.join(full_path[::-1])
class Firma(models.Model):
user = models.ForeignKey(User, default=1, verbose_name='Użytkownik', on_delete=models.CASCADE)
title = models.CharField(max_length=250, verbose_name='Nazwa firmy')
slug = models.SlugField(unique=True, verbose_name='Adres SEO')
category = models.ForeignKey('Kategoria', null=True, blank=True, verbose_name='Kategoria', on_delete=models.CASCADE)
content = models.TextField(verbose_name='Opis')
draft = models.BooleanField(default=False, verbose_name='Szablon')
publish = models.DateField(auto_now=False, auto_now_add=False)
class Meta:
verbose_name='Firma'
verbose_name_plural='Firmy'
def __str__(self):
return self.title
def get_cat_list(self):
k = self.category
breadcrumb = ["dummy"]
while k is not None:
breadcrumb.append(k.slug)
k = k.parent
for i in range(len(breadcrumb)-1):
breadcrumb[i] = '/'.join(breadcrumb[-1:i-1:-1])
return breadcrumb[-1:0:-1]
这总是比使用DUAL table更贵。这就是我们建造它的原因。
答案 1 :(得分:0)
最简单的命令应该是:
SELECT TRUNC(SYSDATE)As Currnt_Time FROM TABLE_NAME WHERE ROWNUM = 1
这不是最优雅的解决方案。