zoukankan      html  css  js  c++  java
  • SqlServer与MySql语法比较

    1、复制表(包括表结构、表数据)

    SqlServer:

      Select * into user_copy from user

    MySql:

      CREATE TABLE user_copy LIKE user;

      INSERT INTO user_copy SELECT * FROM user;

    2、多表连接做update

    SqlServer:

      UPDATE s1 SET s1.salary= s2.salary 
      FROM (SELECT * FROM s WHERE age>10) AS s1 JOIN s2 ON s1.uname= s2.uname
      WHERE s1.uname = 'xx'

    MySql:(无法直接对目标表的查询数据直接做更新,只能针对目标表操作)

      UPDATE s1 JOIN s2 ON s1.uname= s2.uname
      SET s1.salary= s2.salary
      WHERE s1.uname = 'xx'

    3、修改表字段结构

    SqlServer:  

      ALTER TABLE user ALTER COLUMN uid INT NOT NULL
      GO
      ALTER TABLE user ALTER COLUMN name nvarchar(100) NOT NULL
      GO

    MySql:(无法直接对目标表的查询数据直接做更新,只能针对目标表操作)

      ALTER TABLE user MODIFY uid INT NOT NULL COMMENT 'xx';
      ALTER TABLE user MODIFY name varchar(100) NOT NULL COMMENT 'xxy';

    4、添加、修改主键

    SqlServer:

      ALTER TABLE user ADD CONSTRAINT PK_uid_name PRIMARY KEY(uid, name)

    MySql:(无法直接对目标表的查询数据直接做更新,只能针对目标表操作)

      ALTER TABLE user DROP PRIMARY KEY;
      ALTER TABLE user ADD PRIMARY KEY (uid, name);

    5、查询数据拼接Sql语句

    SqlServer:

      SELECT 'insert into dbo.TableName([ID],[Name]) values ('+ CAST([ID] AS VARCHAR) + ',''' + CAST([Name] AS VARCHAR)  + ''')' 
      FROM dbo.TableName WHERE ID > 433

    6、查询字段首位为汉字

    SqlServer:

    SELECT * FROM 表名 WHERE ascii(字段)>127

    7、查询字段包含汉字(任意位)

    SqlServer:

    SELECT * FROM 表名 WHERE 字段 LIKE '%[吖-座]%'
    --[吖-座]是中文字符集第一个到最后一个的范围

    8、SqlServer和Mysql插入记录前判断是否存在,存在则插入,不存在则修改

    SqlServer:

    if NOT exists(SELECT * FROM Setting WHERE ID=0)
    INSERT INTO Setting(ID,Title,SearchKeys, ServiceIntervalSecond,SleepMillisecondPerSearch) VALUES(0,@title,@searchKeys,@serviceIntervalSecond,@sleepMillisecondPerSearch) 
    ELSE 
    UPDATE Setting SET Title=@title,SearchKeys=@searchKeys,ServiceIntervalSecond=@serviceIntervalSecond, SleepMillisecondPerSearch=@sleepMillisecondPerSearch

    MySqL:

    INSERT INTO `his_examine_result` (Mid,His_Examine_Mid, His_File_Mid, ResultType, His_Employee_Mid,
                                      His_Employee_Name, ExamineResult, ExamineItemName, ExamineStandardName, 
                                      ExamineItemUnit, ExamineHighValue, ExamineLowValue, ExamineDiscription, Discription)
        VALUES ($mid,$examineMid,$fileMid,1,null,null,'',$itemName,$standName,$itemUnit,$highValue,$lowValue,'','') 
    ON DUPLICATE KEY UPDATE ExamineResult=$result,ExamineDiscription=$dis

     9、创建索引

    SqlServer:

    IF NOT EXISTS(SELECT * FROM sysindexes WHERE id = OBJECT_ID('T_Person_info') and name = 'idx_pCode')
    CREATE NONCLUSTERED INDEX idx_pCode ON [dbo].T_Person_info
    (
    pCode ASC
    ) ON [PRIMARY];

  • 相关阅读:
    利用Python进行数据分析_Pandas_绘图和可视化_Matplotlib
    利用Python进行数据分析_Pandas_数据清理、转换、合并、重塑
    利用Python进行数据分析_Pandas_数据加载、存储与文件格式
    利用Python进行数据分析_Pandas_层次化索引
    利用Python进行数据分析_Pandas_处理缺失数据
    利用Python进行数据分析_Pandas_汇总和计算描述统计
    利用Python进行数据分析_Pandas_基本功能
    利用Python进行数据分析_Pandas_数据结构
    fizzbuzz Python很有意思的解法
    javascript Array操作
  • 原文地址:https://www.cnblogs.com/fightingtong/p/9114941.html
Copyright © 2011-2022 走看看