oracle基础总结

tech2024-06-21  71

一、ORDER BY子句 请注意,ORDER BY子句总是SELECT语句中的最后一个子句。

1.按列排序 SELECT name, credit_limit,address FROM customers ORDER BY 2 DESC 1; 在这个例子中,name列的位置是1,credit_limit列的位置是2。相当于以下查询语句:

SELECT name, credit_limit,address FROM customers ORDER BY credit_limit DESC name;

2.null排序

select * from customers order by address nulls first; select * from customers order by address nulls last;

3. 按函数或表达式排序数据

SELECT customer_id, name FROM customers ORDER BY UPPER( name );

二、Oracle DISTINCT和NULL

DISTINCT将NULL值视为重复值。如果使用SELECT DISTINCT语句从具有多个NULL值的列中查询数据,则结果集只包含一个NULL值。

三、 extract是提取。 只可以从一个date类型中截取年月日 extract(year|month|day|hour|minute|second from column_name) = value

SQL> select extract (year from sysdate) year, extract (month from sysdate) month, extract (day from sysdate) day from dual;

YEAR MONTH DAY
2015 5 4

to_char(time, ‘YYYY-MM-DD’) as time // 括号里的time表示表中的列名,第二个time则表示转换后的日期列名仍然为time。 select to_date('2005-01-01 ',‘yyyy-MM-dd’) from dual;日期格式转换函数。 select to_char(sysdate,‘yyyy-MM-dd HH24:mi:ss’) from dual;将日期转换为字符串的函数。

四、true,false,and,or的对比。

false>null>true 五、返回执行行数或者行数的百分比

只返回前三行数据: select customer_id from customers order by customer_id FETCH FIRST 3 ROW ONLY ;

最新回复(0)