顯示具有 SQL 標籤的文章。 顯示所有文章
顯示具有 SQL 標籤的文章。 顯示所有文章

2012年2月23日 星期四

[SQL] 搜尋萬用字元


萬用字元

解法一
SELECT * FROM table
WHERE (prod LIKE ''%!_%'' ESCAPE ''!'')

!這符號可以隨便你訂
ESCAPE 子句所指定字元(即!)後的那一個字元(此處為底線_)會被視為是常數字元,而非萬用字元

解法二
SELECT * FROM table
WHERE prod like '%[_]%'

用中括弧把你要的東西括進去,就可以把它當字串來比對了




以上

2012年2月20日 星期一

[SQL] 找出資料庫內的PK欄位


Step1.首先可以先找出此資料庫內所有的table名稱

Select  TABLE  from INFORMATION_SCHEMA.TABLES  order by  TABLE

Step2.接著可選擇顯示特定table的詳細欄位

Select  *   from INFORMATION_SCHEMA.COLUMNS where TABLE = 'Tabletest'

Step3.重點在於紅色的部分

Select  COLUMN_NAME  from INFORMATION_SCHEMA.KEY_COLUMN_USAGE where 
TABLE  = ' Tabletest '



當然順序部分可以再調整,這篇主要是在說呼叫PK欄位的mysql語法
改天有空我會再試試看T-SQL之類的SQL語法,相信應該是大同小異的 XD


2012年2月7日 星期二

[SQL] 備份資料庫

在這邊提供一個我常用的SCRIPT
只要執行這個SQL就可以自動整個資料庫備份至指定資料夾
而不用使用SQL Management 來設定

2012年2月6日 星期一

[SQL] 第三正規化 (3NF)

第三正規化(3NF,中國大陸譯作第三范式,台灣譯作第三正规化)是資料庫正規化中所使用的一種正規形式,用來檢驗是否所有非鍵屬性都只和候選鍵有相關性,也就是說所有非鍵屬性互相之間應該是無關的。
第三正規化和第二正規化不同的地方在於,在第三正規化裡,所有的非鍵屬性都必須和每個候選鍵有直接相關。如果再對第三正規化做進一步加強就成了BC正規化,它所強調的重點就在於 "資料間的關係是奠基在鍵上、以整個鍵為考量、而且除了鍵之外不考慮其他因素"。

[SQL] 第二正規化 (2NF)

第二正規化(2NF,中國大陸譯作第二范式,台灣譯作第二正规化)是資料庫正規化中所使用的一種正規形式。它的規則是要求資料表裡的所有資料都要和該資料表的主鍵有完全相依關係;如果有哪些資料只和主鍵的一部份有關的話,就得把它們獨立出來變成另一個資料表。如果一個資料表的主鍵只有單一一個欄位的話,它就一定符合第二正規化。

一個資料表符合第二正規化若且唯若

  • 它符合第一正規化
  • 所有非主鍵的欄位都一定和主鍵有關

[SQL] 第一正規化 (1NF)

第一正規化(1NF,中國大陸譯作第一范式,台灣譯做第一正規化)是資料庫正規化中所使用的一種正規形式。第一正規化是為了要排除 重複群 的出現,所採用的方法是要求資料庫的每個欄位都只能存放單一值,而且每筆記錄都要能利用一個惟一的主鍵來加以識別。

2012年2月4日 星期六

[SQL] .BAT的應用


副檔名是bat的文件就是批次處理文件。
簡單的說,批次處理的作用就是自動的連續執行多條指令。

2012年2月1日 星期三

[SQL] 暫存資料表的應用


狀況:TABLE中會儲存各式各樣的資料,當你想要針對兩個TABLE中的某些特定資料來做GROUP BY或DISTINCT時
就會需要用到暫存TABLE了

2011年8月10日 星期三

[C#] SQL 連接字串


SQL2005, SQL2008, MySQL ,Excel, Access ,Excel 2007, Access 2007.....

所有DB的connection string Example


[SQL] LogTable 觸發程序(Trigger)



這是之前寫的LogTable Trigger,
記錄下來當以後的example。

2011年8月9日 星期二

2011年8月7日 星期日

[SQL] 預存程序 (Stored Procedures)



撰寫 Stored Procedures
利用 ADO 來存取資料庫是一件既輕鬆又簡單的工作, 不過有的時候又臭又長的 SQL 敘述實在很煩人,

[SQL] SQL語法教學

一般而言,資料庫的語法 ( SQL ) 分為三大類別:

1. DDL ( Data Definition Language ):定義資料庫物件使用的語法,常看到的關鍵字有:

Create:建立資料庫的物件。

Alter:變更資料庫的物件。

Drop:刪除資料庫的物件。

2. DCL ( Data Control Language ):控制資料庫物件使用狀況的語法,常看到的關鍵字有:

Grant:賦予使用者使用物件的權限。

Revoke:取消使用者使用物件的權限。

Commit:Transaction 正常作業完成。

Rollback:Transaction 作業異常,異動的資料回復到 Transaction 開始的狀態。

3. DML ( Data Manipulation Language ):維護資料庫資料內容的語法,常看到的關鍵字有:

Insert:新增資料到 Table 中。

Update:更改 Table 中的資料。

Delete:刪除 Table 中的資料。

Select:選取資料庫中的資料。

2011年8月4日 星期四

[SQL] 金額千分位的語法

 
通常轉換金額都是寫成JavaScript function

可是好死不死轉換要在SQL就先做該怎麼辦呢?

2011年8月3日 星期三

[SQL] 資料表值函式 CLR

  這跟SVF很像,但他回傳的是資料表的使用者定義函數,
一樣從SQL Server 2005 開始都可以使用。

Ps.對於資料表値函式而言,傳回資料表類型的資料行不得包含時間戳記資料行或非 Unicode 字串資料類型資料行 (例如,char、varchar 和 text)。 不支援 NOT NULL 條件約束。

 

[SQL] 純量值函數 SVF

 
這其實就很像C#裡的函式,從SQL Server 2005 開始都可以使用,
會傳回單一值,如字串、整數或位元值。