SQL相關整理

2021-09-24 15:19:14 字數 3370 閱讀 8322

串聯多列值:

--concat(),引數:列或字串,多個條件用逗號分開。

--示例

select concat(

'列1'

,'列2'

)as concatstr from

table

if-else:
--case表示式,使用方法,case when money>100 then '大於100' else '小於100' end

--示例

select

case

when

column

>

100then

'大於100'

else

'小於100'

endas test from

table

隨機返回若干行記錄
--mysql 隨機:rand() 返回條數:limit

select

*from

table

order

by rand(

)limit

5--db2 隨機:rand() 返回條數fetch first xx rows only,xx代表返回條數

select

*from

table

order

by rand(

)fetch

first

5rows only

-- sql server 隨機newid()

select

top5

*from

table

order

by newid(

)

null值轉換成實際值
--coalesce(列,值)  將指定列的null值轉換成指定值

select

coalesce

(column

,'值'

)from

table

--comm為指定table中的列

order by的排序
--order by可以指定列名 也可以指定數值

select

*from

table

order

by column_name

select

*from

table

order

by column_number

--column_number 具體的數字對應的返回列 從左向右數的第幾列

多條件排序
--排序列用逗號分開

select

*from

table

order

by column1,column2

根據擷取字串排序
--mysql,db2...先使用substr(列,開始位置)擷取字串 再進行排序

--sql server 使用substring(列,開始位置,擷取長度)擷取字串 再進行排序

select

*from

table

order

by substr(

column

,index

)--mysql...

select

*from

table

order

by substring(

column

,index

,length)

--sql server

對一列資料裡面有null值的列排序
--先將null單獨提出來做為一列  然後在排序

select

column

from

(select

column

,case

when

column

isnull

then

0else

1end

as columnisnull from

table

) table1

order

by columnisnull ,

column

--除非資料庫提供無需修改非null值資料的情況下方便的對null進行排序,否則一定得加乙個輔助列

對邏輯條件進行排序
--可以在order by 後面是用case 表示式

select

column

from

table

order

bycase

column

='value'

then column1 else column2 end

union all 和 union
--union all 和 union都是疊加兩個行集的語句

--區別:union all 將多個表中的行併入到乙個結果集,union想當於針對union all的輸出結果再執行一次distinct

--注:對於所有的集合運算來說,查詢列的數量必須一致,且資料型別匹配

select column1,column2 from

table

union

allselect column1,column2 from table2

--返回資料

-- column1 | column2

-- table.column1 | table.column2

-- table.column1 | table.column2

-- table1.column1 | table1.column2

-- table1.column1 | table1.column2

連線查詢

連線查詢的兩種方式

select

*from table1,table2 where table1.

column

=table2.

column

select

*from table1 join table2 on table1.

column

=table2.

column

上面兩種風格都符合ansi標準1
select

*from table1

join table2 on table1.column1=table2.column1 and table1.cloumn2=table2.cloumn2

ansi sql: sql↩︎

SQL 相關筆記整理

sql 按語句分類 ddl data definition language 資料定義語句 資料定義語句主要是定義了不同的資料段,資料庫,表,列,索引等資料庫物件。常用語句關鍵字 create,drop,alter etc.dml data manipulation language 資料操縱語句 ...

整理 DC相關

驗證 1.寫個測試程式,在螢幕上圈選乙個區域,把這個區域的公釐尺寸報出來.2.寫個螢幕標尺,使用者隨意在螢幕上標註兩點,報出這條線的公釐尺寸.要顯示出標尺的外形.codeproject上有這種資料,先找一下.預期的實現 程式執行後為托盤,測量按鈕在懸浮窗內.懸浮窗半透明,位圖背景,位圖按鈕.卡尺的左...

NSDateFormatter相關整理

formatter譯為格式,相應的nsdateformatter就相當於是nsdate的轉換類,將nsdate轉換為另一種格式,或轉換回來。nsdate沒有自己的輸出,需要借助nsdateformatter以相應格式輸出。這差不多就是nsdateformatter的作用了吧。常用的方法並不複雜,幾條...