2012年8月28日 星期二

MySQL To MSSQL

重設 auto increment 值
dbcc checkident('MEMBERS0', RESEED, 0);

LIMIT 2, 3
SELECT * FROM MEMBERS0 LIMIT 2, 3;

SELECT * FROM (
    SELECT *, ROW_NUMBER() OVER (ORDER BY ID) RN FROM I_MARRY_V3.dbo.MEMBERS0
) T WHERE T.RN BETWEEN 3 AND 5;

GROUP BY ORDER LIMIT
SELECT GENDER, COUNT(*) AS TOTAL FROM MEMBERS0 GROUP BY GENDER ORDER BY GENDER ASC LIMIT 0, 1;

SELECT T.GENDER, T.TOTAL, T.RN FROM (
    SELECT GENDER, COUNT(*) AS TOTAL, ROW_NUMBER() OVER (ORDER BY GENDER DESC)
    RN FROM I_MARRY_V3.dbo.MEMBERS0 GROUP BY GENDER
) T WHERE T.RN BETWEEN 1 AND 1;

INSERT IGNORE INTO IGNORE
INSERT IGNORE INTO TEMP...

IF NOT EXISTS (
    SELECT * FROM TEMP WHERE = ...
)
BEGIN
    INSERT INTO TEMP (...) VALUES (...)
END

INSERT INTO... ON DUPLICATE KEY UPDATE
INSERT INTO TEMP (MEMBERS_ID, TYPE, COMMENT) VALUES (3, 1, 'None') ON DUPLICATE KEY UPDATE MEMBERS_ID = 3, TYPE = 2

UPDATE TEMP SET MEMBERS_ID = 3, TYPE = 2 WHERE MEMBERS_ID = 3 AND TYPE = 1
IF @@ROWCOUNT = 0
INSERT INTO TEMP (MEMBERS_ID, TYPE, COMMENT) values(3, 1, 'None');

沒有留言:

張貼留言