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];

SqlServer与MySql语法比较的更多相关文章

  1. sqlserver迁移mysql语法修改

    1.top 100  选取表中前100条改为 limit #{limit},limit 为变量2.获取当前日期getdate()改为now()3.id=#{id,jdbcType=BIGINT}改为i ...

  2. 你搞懂 ORACLE、 SQLSERVER、MYSQL与DB2的区别了吗

    ORACLE. SQLSERVER.MYSQL与DB2的区别--平台性:    Oracle.MYSQL与DB2可在所有主流平台上运行:    SQL Server只能在Windows下运行: --安 ...

  3. Sqlserver与Mysql触发器之间的差别

    今天练习sqlserver,一开始感觉应该像Oracle,Mysql语法差不多,但是经过一下午的奋战,才感觉原来这三个数据库就是有区别啊, 我原来学习触发器的时候用的是Mysql,感觉还行,但是今天采 ...

  4. SQLServer Oracle MySQL的区别

    table tr:nth-child(odd){ background: #FFFFCC; font-size: 18px; } table tr:nth-child(even){ backgroun ...

  5. SqlServer切换MySql总结

    最近项目任务不多就琢磨着把SqlServer换成MySql(数据访问使用的ado.net),初步想了下方案有2种: 方案一:继续使用ado.net,重写所有的sql语句 优势:数据访问效率高,改写Sq ...

  6. B-Tree索引在sqlserver和mysql中的应用

    在谈论数据库性能优化的时候,通常都会提到“索引”,但很多人其实并没有真正理解索引,也没有搞清楚索引为什么就能加快检索速度,以至于在实践中并不能很好的应用索引.事实上,索引是一种廉价而且十分有效的优化手 ...

  7. .NET程序迁移到Mysql的极简方案——让GGTalk同时支持Sqlserver与mysql全程记录!

    园子里的这个GGTalk,咱们前前后后用它移花接木做的IM项目也不下三四个了.初次入手的时候,洋洋代码,多少感觉有些难以把握.不过一来二去,理清了头绪,也就一览无余了.相信跟我们一样想要利用GGTal ...

  8. SQLServer转MYSQL的方法(连数据)

    本次转换需要依赖使用工具Navicat Premium. 首先,将数据库移至本地SQLServer,我试过直接在局域网上其他SQLServer服务器上想转到本地Mysql好像有问题,想将远程数据库备份 ...

  9. MVC4,MVC3,VS2012+ entity framework Migration from Sqlserver to Mysql

    在开发的初期个人认为因VS与Sqlserver的配合很默契,即可以方便的实现Code First,又可以使用SqlServer Manager很漂亮的进行建模与变更,也许是个人的使用习惯MS的界面做的 ...

随机推荐

  1. vfs:结构体对象

    VFS结构体 super_block 存储一个已安装的文件系统的控制信息,代表一个已安装的文件系统:每次一个实际的文件系统被安装时, 内核会从磁盘的特定位置读取一些控制信息来填充内存中的超级块对象.一 ...

  2. 关于vcruntime140D.dll丢失问题

    电脑磁盘占用率100%,又检测出硬盘磁道坏了,要么装win7,要么换个SSD,无奈重装环境. 遇到这个问题,之前的电脑就遇到过,网上交的下载这个文件装到C盘Windows的SysWOW64,对于实验室 ...

  3. [bzoj1860 ZJOI2006] 超级麻将 (线性dp)

    传送门 Description Input 第一行一个整数N(N<=100),表示玩了N次超级麻将. 接下来N行,每行100个数a1..a100,描述每次玩牌手中各种牌的数量.ai表示数字为i的 ...

  4. Linux循环

    echo 'for循环' do echo $i done

  5. HDU 2224 The shortest path

    The shortest path Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others ...

  6. hdu 1239

    首先,p,q>=2,所以p,q<=50000; 然后,我们观察a<=b<1000,而p,q<=100000.那么,q>=10000时,p<=10,则a/b&l ...

  7. javascript基础篇--function类型(上)

    在js中,function类型实际上是对象,每一个函数都是function类型的一个实例.并且与其它引用类型一样具有属性和方法. 声明 1普通方式 Function sum(num1,num2) { ...

  8. 自己主动化的在程序中显示SVN版本号

    有时候会有这种情况,策划拿着应用过来提一个bug,但我们却不好确定策划的手机上装的应用相应的是那个代码版本号. 为了解决问题.我们希望能在应用上显示出当前应用所相应的代码版本号,即svn版本号. 构想 ...

  9. 贪吃蛇c++实现

    近期没事翻了一下曾经写的程序.真是不堪入目.曾经真是什么都不懂.只是有一个程序倒是挺有意思的,大二的时候写的一个贪吃蛇游戏.尽管程序非常难看,还有非常多漏洞.但也是这个程序让我真正開始喜欢上了编程.不 ...

  10. 兼容chrome和ie的音乐播放

    兼容chrome和ie的音乐播放(Ie7 Ie8 Ie9 均測试过 ) <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitiona ...