搞C#、.NET的,大都用的mssql数据库,但是在mysql里边,有一些mssql的用法是不适用的,以下是我今天刚经历的两个例子,共大家参考。

1、SELECT INTO TABLE

在mssql中, 有如下用法,可以直接把查询出的数据放到一个新表中,这条语句可以很好的用来备份表。

select * into table1_bak from table1

2、not in()

在mssql中, not in () 的括弧内可以直接放置sql语句,也可以很方便的实现特殊查询。

select * from bill_log where bill_id not in(select bill_id from bill_log07)

这条语句在mysql中就会报错。

变通方法:

以上语句不能使用,我们可以使用以下语句替代,也是可以实现的。

1、

insert into table1_bak(id,uname) select id,uname from table1

就是需要自己先创建表table1_bak,显得比较麻烦。

2、

SELECT table1.* FROM table1 LEFT JOIN table2 ON table1.id=table2.id where table2.id IS NULL

这个貌似没有什么太难理解的,就是写起来麻烦点。