學習筆記 查詢和排序

2021-08-14 15:41:31 字數 2373 閱讀 7954

查詢

select *|欄位名|表示式 from 表名 [where 條件 [order by 欄位名]]

sql語句一般對大小寫不敏感,通常sql關鍵字使用大寫,非sql關鍵字使用小寫

oracle 支援的資料型別:字元型,數值型,日期時間型,大物件型,偽列型

算數表示式

oracle中只有 + - / * 四個。

select name,salary+500 from employees;

select name, salary*12+500 from employees;

字段別名

可以使用as關鍵字,別名中有空格或者特殊字元或者大小寫敏感要放在單引號中

as關鍵字,可寫可不寫,不做強制要求。但是寫上的話閱讀性較好。

select first_name 'name', salary*12+500 'yearly salary' from employees;

select first_name as 'name' from employees;

連字運算子

|| select first_name || last_name as 'name' from employees;

select first_name || ' ' || last_name as 'name' from employees;

去除重複行

使用distinct關鍵字

select distinct *** from table_name;

在返回結果中除去相同的行。

限定返回行

where子句

select name from employees where id=5;

select name from employees where last_name='it';

值得注意的是,sql語句是不區分大小寫的,但是where比較是區分大小寫的

select name from employees where id >= 20;

常用的比較條件:=, >, <, >=, >=, <>, !=, ^=後面三個可以認為是不等於

between...and..條件

select name from employees where id between 10 and 20;

in條件

select name from employees where id in(6, 9);

select name from employees where id in('列名1', '列名2, ...);

滿足條件中的乙個就行。

like 條件

%代表乙個或多個字元,_ 代表乙個字元

select name from employees where name like '%d_';

當確實需要 %和_ 這兩個符號時,使用 escape

select name from employees where name like '%d$_%' escape '$';

這個表示找包含 d_ 字元的名字, escape 的 '$' 表示不將它後面的字元看做萬用字元

null 條件

分為 is null, is not null, 判斷null 不能使用 = ,因為null不屬於任何值。

select name from employees where last_name is not null;

邏輯條件

and or not,為別為與,或,非

select name from employees where id=5 and salary >= 20000;

排序

order by 子句

必須位於sql語句的最後面。要指定乙個表示式,乙個欄位名,

作為排序條件。排序方式有asc(公升序, 預設), desc(降序)。

select * from employees order by id;

select * from employees order by id desc;

使用別名進行排序

select last_name as 'name' from employees order by name desc;

使用序號進行排序

select last_name, first_name, id from employees order by 3;

3 代表 id 欄位名

多重排序

select first_name, last_name, id from employees order by id, last_name desc;

在以id為公升序排列的基礎上,進行以last_name為降序排序。

MySQL基礎學習筆記 排序 分頁查詢

關鍵字 order byascdesc 意思排序 公升序 預設,可省略 降序 descend 語法 先按照列1進行排序,如果列1的值相同時,則按照列2排序,依次類推 select from 表名 order by 列1 asc desc 列2 asc desc,單價降序查詢所有單位為元 kg的 se...

查詢和排序

二分查詢演算法 def search list,m low 0 high len list 1 while low high mid low high 2 if list mid m high mid 1 elif list mid m low mid 1 else return mid retur...

排序和查詢

1 氣泡排序 雞尾酒排序 選擇排序 插入排序 快速排序 include 氣泡排序 voidmaopao int a,int n int i,j for i 0 i n 1 i for j 0 j n 1 i j if a j a j 1 swap a,j,j 1 交換兩個數 void swap in...