不是我写的sql,比较烂,但是有一个可以关注的点 oracle对于双引号中的列名 不会进行强制转化为大写
create table grade("ID" NUMBER(10,0) NOT NULL ENABLE, "score" NUMBER(10,0));
INSERT INTO grade t VALUES(1,100);
commit;
INSERT INTO grade t VALUES(2,90);
commit;
INSERT INTO grade t VALUES(3,94);
commit;
INSERT INTO grade t VALUES(4,94);
commit;
INSERT INTO grade t VALUES(5,100);
commit;
1:
select o.id,o."score"
from grade o
where o."score" = (select max(n."score") from grade n where n."score"<( select max(m."score") from grade m ))order by o.id
2:
select n.id from grade n where n."score"=(
select t."score" from (
select m."score" from grade m where m."score"<(
select max(n."score") from grade n
) order by m."score" desc
) t where rownum<2
) order by n.id
分享到:
相关推荐
### 如何让Oracle表及字段显示为区分大小写 #### Oracle内部表存储原理与区分大小写的实现 在深入了解如何让Oracle表及字段显示为区分大小写之前,我们需要先理解Oracle内部是如何存储表和字段的。Oracle数据库...
请注意,`table_name`需要与实际的表名匹配,且在Oracle中,表名通常是区分大小写的,因此要确保输入正确的大小写格式。 另一种方法,特别是当你需要以特定分隔符(例如逗号)连接所有字段名时,可以利用Oracle特有...
- **达梦数据库**:支持字段名的大小写敏感性,即在查询结果中会按照原始SQL语句中的大小写返回列名。例如,执行`SELECT typeid, typename FROM T_PUB_PRODUCT_TYPE`这样的查询时,返回的列名为`typeid`和`typename`...
相比之下,SQL Server通常不区分大小写,但在某些特定情况下(如表名和列名)可能会区分大小写。 至于`SELECT`语句,Oracle允许将结果集作为临时表使用,无需别名,并且有`DUAL`虚表用于计算不依赖于实际表的表达式...
但是,如果你在创建表时使用双引号将名称括起来,Oracle将保留大小写,这时就是区分大小写的。 2. **特殊字符**:Oracle标识符不能包含空格或SQL保留字,但可以包含下划线(_)和美元符号($)。此外,如果使用非...
POWERDESIGNER 生成 Oracle 表名带有引号的问题可以通过修改表名或取消大小写敏感性来解决。 POWERDESIGNER 是一款功能强大的数据建模工具,可以帮助用户设计、生成和管理数据库结构。了解 POWERDESIGNER 和 Oracle...
1. **大小写不敏感**:Oracle 默认是不区分大小写的,但为了保持一致性,通常推荐全大写字母命名,尤其是在PL/SQL中。 2. **长度限制**:Oracle 对表名、列名的长度限制为30个字符,但在某些情况下可以扩展到128个...
2. 如果在 Oracle 中创建的表名和列名有引用的标识符,请全部使用与 Oracle 中创建名称时相同的字母大小写格式。 3. INSERT 语句应为表中的所有列提供值,即使表中的某些列为 NULL 或有默认值。 使用 Microsoft OLE...
这种错误通常是由于开发者在编写 SQL 语句时,忘记了某个列名或写错了列名,导致 Oracle 无法找到该列名。解决这个错误的方法是,检查 SQL 语句中的列名是否正确,确保列名存在于数据库中。 ORA-00942: 表或者视图...
虽然SQL本身对大小写不敏感,但数据库中的实际数据是区分大小写的。 2. SQL基本功能: - **创建或删除表**:你可以使用CREATE TABLE语句创建新的表,而DROP TABLE语句则用于删除不再需要的表。 - **插入、修改和...
10. **大小写敏感:** 数据大小写敏感,但关键字不敏感;Oracle 默认将存储的值按大写存储。 - 示例: `SELECT 'abc' = 'ABC' FROM DUAL;` —— 返回 FALSE。 #### 二、SQL 条件筛选 1. **通配符:** `_` 和 `%` 用于...
不过,过大或过小的共享池都可能导致性能下降,因此需要合理设定,如系统内存为1G时,共享池建议设为150M-200M,并随内存增加适当增加,但最大不超过500M。 其次,SQL语句的优化是另一个关键领域。理解Oracle处理...
- 定义外部表:定义一个外部表,指定数据源为XLS文件,包括文件路径、表名、列名和数据格式。 - SELECT语句:使用SELECT语句从要导出的Oracle表中选择数据,然后通过INTO OUTFILE子句将结果写入到XLS文件。 - ...
例如,TO_DATE和TO_CHAR用于日期转换,UPPER和LOWER改变字符大小写,LENGTH获取字符串长度。 第八讲:Oracle数据库的管理 数据库管理包括表空间、数据文件、回滚段、索引、触发器和存储过程的管理。表空间是逻辑...
确保表或视图已创建,并且拼写和大小写正确。 10. ORA-12560:TNS:protocol adapter error - 连接问题,可能是网络问题、配置错误或监听器问题。检查网络连接、TNSNAMES.ORA配置以及监听器状态。 11. ORA-00980:...
Oracle的查询条件是区分大小写的,例如在查询EMP表中名字为'JONE'的员工时,如果写为'jone',则会返回"未选定行"。 2. **无效列名 (invalid column name)** 这个错误通常是因为列名错误、列名与表名不匹配或使用了...
- **大小写不敏感**:SQL语句在Oracle中不区分大小写。 - **格式化**:为了提高可读性,建议将SQL语句分多行书写,并使用适当的缩进。 - **关键字不可缩写**:SQL的关键字不能被缩写,并且必须保持在同一行内。 - **...
2. **字符串函数**:如UPPER()和LOWER()转换大小写,SUBSTR()截取字符串,INSTR()查找子串位置,CONCAT()连接字符串。 3. **日期函数**:SYSDATE获取当前系统日期,ADD_MONTHS()增加月份,EXTRACT()提取日期部分,...
- **大小写不敏感**:SQL语句在Oracle中不区分大小写。 - **多行书写**:SQL语句可以写在一行内,也可以拆分成多行,提高代码的可读性。 - **关键字规则**:关键字不能缩写,且不能跨行。 ### 列头设置与算术运算 ...