顯示具有 mssql與mysql比較 標籤的文章。 顯示所有文章
顯示具有 mssql與mysql比較 標籤的文章。 顯示所有文章

2014年5月29日 星期四

【MySQL、MSSQL】 分頁寫法

MSSQL 分頁的寫法:
抓取第80000~80020的資料 

SELECT * FROM
(SELECT ROW_NUMBER() over (order by id ASC) sort,* FROM test) as c
WHERE sort BETWEEN 80000 and 80020

OR

WITH Table AS (
   SELECT ROW_NUMBER() over (order by id ASC) sort,* FROM test
) SELECT * FROM Table WHERE sort BETWEEN 80000 and 80020



MYSQL:

SELECT * FROM `test` LIMIT 80000,20


* MySQL 簡單多了


2014年5月28日 星期三

【MYSQL、MSSQL】複製資料表、複製一筆資料

1.複製一個資料表
MySQL 建議使用下面的方式,好處是 Schema 會一樣
  1. CREATE TABLE new_table LIKE old_table;
  2. INSERT new_table SELECT * FROM old_table
MSSQL 要使用 SELECT * INTO new_table FROM old_table
只複製結構 SELECT * INTO new_table FROM old_table WHERE 1=0

2.複製一筆資料
MySQL、MSSQL 都可使用

INSERT INTO test(
id,
        name,
test1,
test2
)
SELECT
3 AS id,
name,
'test' AS test1,
test2
FROM test
WHERE id =1

* 要複製原來的值就不用AS

3.運用
當資料量大,查詢時可將一個表拆成多個表
如:
Insert Into new_table (學號, 姓名,國文,英文,數學)
Select * From old_table Where 英文>90