本文最后更新于 134 天前。
使用GROUP BY分组,在用MIN求出每组中最小的,再TO_CHAR把格式改成要求的格式’YYYY-MM-DD’
SELECT player_id, TO_CHAR(MIN(event_date), 'YYYY-MM-DD') first_login
from Activity
group by player_id
在Oracle数据库中,单引号和双引号确实有不同的用途:
单引号(’ ‘)
字符串字面量:单引号用于定义字符串常量。当你想在SQL语句中插入一个具体的文本值时,这个值应该被单引号包围。例如:
SELECT ‘Hello, World!’;
字符串中的单引号转义:如果要在字符串中包含单引号,需要使用两个单引号(”)来表示一个单引号。例如:
SELECT ‘It”s a nice day.’;
双引号(” “)
标识符:双引号用于引用数据库对象(如表名、列名等)的名称,特别是在名称包含空格、特殊字符,或者是Oracle的保留关键字的情况下。例如,如果你有一个名为`”My Table”`的表,你必须使用双引号来引用它:
SELECT * FROM “My Table”;
大小写敏感性:当使用双引号引用标识符时,Oracle会保持并识别标识符的原始大小写。例如,`”myTable”`和`”MYTABLE”`会被视为不同的标识符。
避免关键字冲突:如果标识符与Oracle的关键字相同,那么使用双引号可以避免语法错误。例如,你有一个名为`”SELECT”`的列,你必须使用双引号来引用它:
SELECT “SELECT” FROM my_table;
总结来说,在Oracle中,单引号主要用于字符串常量,而双引号用于引用包含特殊字符、空格或大小写敏感的标识符,以及避免与关键字冲突的情况。在大多数情况下,如果没有特殊要求,数据库对象的名称不应包含双引号,除非需要特别处理大小写或特殊字符。