Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 这个问题正确吗?从销售人员s中选择s,其中s.dateOfEmployment_Sql_Database - Fatal编程技术网

Sql 这个问题正确吗?从销售人员s中选择s,其中s.dateOfEmployment

Sql 这个问题正确吗?从销售人员s中选择s,其中s.dateOfEmployment,sql,database,Sql,Database,我不确定如何查询日期,我尝试过在没有“”的情况下查询,但它不起作用。我想知道这是否正确。Dateofemployment是数据库中的一个日期,我在其中输入的日期就是日期 SELECT s FROM Salesmen s WHERE s.dateOfEmployment < '26-06-2012' ORDER BY s.salepersonId ASC 您的查询是正确的,您必须将这两个引号括起来,因为dateOfEmployment是一个日期。但是,请注意日期和月份的位置,并确保您的查询

我不确定如何查询日期,我尝试过在没有“”的情况下查询,但它不起作用。我想知道这是否正确。Dateofemployment是数据库中的一个日期,我在其中输入的日期就是日期

SELECT s
FROM Salesmen s
WHERE s.dateOfEmployment < '26-06-2012'
ORDER BY s.salepersonId ASC

您的查询是正确的,您必须将这两个引号括起来,因为dateOfEmployment是一个日期。但是,请注意日期和月份的位置,并确保您的查询符合您的要求。

不要假设存在特定的日期格式dmy、ymd、mdy等,始终使用DBMS的函数来编写日期,而不是编写字符串文字,例如Oracle和其他一些文件中的TO_date

在最佳情况下,您可以使用标准SQL的日期文字:

WHERE s.dateOfEmployment < DATE '2012-06-26'

大多数数据库管理系统都支持它,并且没有歧义,因为只允许使用一种格式:yyyy-mm-dd

当您省略引号时,您有一个简单的算术表达式:26-06-2012。这相当于-1992年。这是一个整数,而不是日期,因此比较可能会产生错误,或者至少不会返回true

在查询中输入日期时,应使用ISO标准格式:YYYY-MM-DD。大多数数据库将接受以下格式:

WHERE s.dateOfEmployment < '2012-06-26'

在Oracle中,您需要在常量之前添加日期。

没有明确说明的问题,但您是否在寻找?从Salesmen s中选择s.“dateOfEmployment”,其中s.dateOfEmployment<'26-06-2012'由s.salepersonId订购您使用的是哪种数据库管理系统?-那个么什么是雇佣日期类型?你们使用的是哪种数据库管理系统?博士后?甲骨文?但它没有给我任何结果,即使应该有很多:/是的,你必须写“26-06-2012”。尝试使用SELECT*而不是SELECT s,再次确保您的日期格式是存储到数据库中的格式。