初学MySQL,今天遇到了一个问题,然后汇总了一下MySQL的一些语法

1. date和datetime类型是不同的

date只记录日期(包括年月日),datetime记录日期和时间(包括年月日时分秒)

注:这一点和sql server 不同

2. NOW()函数和SYSDATE()函数也是不同的

NOW()函数 记录操作开始时间(在操作的任意阶段都是一样,无论操作中间停留了多长时间),SYSDATE()函数 记录实时时间(在操作的任意阶段都不一样)

3. 删除数据的语法

DELETE FROM table_name WHERE .....

4. int后面的长度表示什么

不知道有没有像我一样,每次设置长度时都很纠结的,相信看完这篇文章你不会再纠结 http://www.cnblogs.com/echo-something/archive/2012/08/26/mysql_int.html

5. 事物的使用语法

START TRANSACTION;
......
COMMIT;

6. GROUP BY

SQL写法

SELECT COUNT(*), NAME, AGE
FROM tablename a
GROUP BY NAME,AGE
ORDER BY id DESC

MySQL写法

SELECT COUNT(*), NAME, AGE
FROM tablename a
GROUP BY AGE
ORDER BY id DESC

这里可以看出一点区别,SELECT语句里面的除了函数,在SQL中需要全部列出来(即NAME,AGE字段),而MySQL中则不需要全部列出来

7. if else 使用方法

IF search_condition THEN statement_list
[ELSEIF search_condition THEN statement_list] ...
[ELSE statement_list]

示例:

-- p_oper 1#添加,2#修改,3#删除
IF (p_oper = 1) THEN
-- 添加收货地址
INSERT INTO tbname
(address, contacter, phone, cid, state)
VALUES
(p_address, p_contacter, p_phone, p_cid, p_state);
ELSEIF (p_oper = 2) THEN
-- 修改收货地址
UPDATE
tbname
SET
address = p_address,
contacter = p_contacter,
phone = p_phone,
state = p_state,
updatetime = CURRENT_TIMESTAMP,
deleted = p_deleted
WHERE
mcaid = p_mcaid;
ELSEIF (p_oper = 3) THEN
-- 删除收货地址
UPDATE
tbname
SET
deleted = p_deleted
WHERE
mcaid = p_mcaid;
END IF;

8. 变量使用

DECLARE startrow INT DEFAULT 0;		-- 从第几行开始查询
DECLARE pagecount INT DEFAULT 10; -- 一页多少条
IF(p_pagenum > 0) THEN -- 计算起始条数
SET startrow = p_pagenum * pagecount;
END IF;
IF (p_cid > 0) THEN
SELECT
*
FROM
tablename
WHERE
......
ORDER BY
createtime DESC
LIMIT
startrow, pagecount;
END IF;

MySQL参考手册:http://dev.mysql.com/doc/refman/5.1/zh/stored-procedures.html

MySQL错误大全:http://www.cnblogs.com/xugang/articles/882943.html

MySQL的一些语法总结的更多相关文章

  1. MySQL创建索引语法

    1.介绍: 所有mysql索引列类型都可以被索引,对来相关类使用索引可以提高select查询性能,根据mysql索引数,可以是最大索引与最小索引,每种存储引擎对每个表的至少支持16的索引.总索引长度为 ...

  2. MYSQL整理的语法

    MYSQL整理的语法 http://www.cnblogs.com/suoning/p/5744849.html

  3. sql点滴41—mysql常见sql语法

    原文:sql点滴41-mysql常见sql语法 ALTER TABLE:添加,修改,删除表的列,约束等表的定义. 查看列:desc 表名; 修改表名:alter table t_book rename ...

  4. MySQL中show语法使用总结

    MySQL中 show 语法的使用: 先查看MySQL版本信息: mysql> select version(); +------------+ | version() | +--------- ...

  5. (转)MySQL中show语法

    MySQL中show语法 1. show tables或show tables from database_name; -- 显示当前数据库中所有表的名称. 2. show databases; -- ...

  6. mysql基础知识语法汇总整理(二)

    mysql基础知识语法汇总整理(一) insert /*insert*/ insert into 表名(字段列表) values(值列表); --蠕虫复制 (优点:快速复制数据,测试服务器压力) in ...

  7. mysql基础知识语法汇总整理(一)

    mysql基础知识语法汇总整理(二)   连接数据库操作 /*连接mysql*/ mysql -h 地址 -P 端口 -u 用户名 -p 密码 例如: mysql -u root -p **** /* ...

  8. mysql MAX()函数 语法

    mysql MAX()函数 语法 作用:返回一列中的最大值.NULL 值不包括在计算中.直线电机模组--BZD80N 语法:SELECT MAX(column_name) FROM table_nam ...

  9. mysql LAST()函数 语法

    mysql LAST()函数 语法 作用:返回指定的字段中最后一个记录的值. 语法:SELECT LAST(column_name) FROM table_name 注释:可使用 ORDER BY 语 ...

随机推荐

  1. html.css溢出

    <!DOCTYPE html><!DOCTYPE html><html><head> <title></title> <m ...

  2. Errore HTTP 404.2 - Not Found" IIS 7.5 请求的内容似乎是脚本,因而将无法由静态文件处理程序来处理

    解决方法: 找到IIS的根节点->右侧“ISAPI和CGI限制”->把禁止的ASP.Net版本项设置为允许. 如下图 今天配置本地iis出现了一些问题,第一个是出现cgi等错误,iis重新 ...

  3. java 位运算权限管控(转载)

    这里笔者介绍一种很常用,也比较专业的权限控制思路.这里用java语言描述,其实都差不多的.要换成其他的语言主,自己转一下就可以了.为了方便起见,我们这里定义a^b为:a的b次方.这里,我们为每一个操作 ...

  4. UILable  /  UITextField  /   UIButton

    // 获取屏幕大小的view UIView *contentView = [[UIView alloc] initWithFrame:[UIScreen mainScreen].bounds]; // ...

  5. ScrollView嵌套listview 时根据内容动态设置listview高度

    public static void setListViewHeightBasedOnChilds(ListView listView){ ListAdapter listAdapter = list ...

  6. 【object-c基础】Object-c基础之三:面对对象开发@interface,@implementation

    1.@interface 在java等语言编程中,创建类都是用class,但在object-c中,用@interface. 例子: @interface circle :NSObject    //定 ...

  7. 来,试试PERL

    试试,看看能否真的替代AWK,SED这些的... #!/usr/bin/perl print "hello, world!\n"; $line = <STDIN>; i ...

  8. C语言在单片机开发中的应用

    在单片机的开发应用中,已逐渐开始引入高级语言,C语言就是其中的一种.对用惯了汇编的人来说,总觉得高级语言’可控性’不好,不如汇编那样随心所欲.但是只要我们掌握了一定的C语言知识,有些东西还是容易做出来 ...

  9. 一定要学会OutputDebugString,方便源码级调试

    省得到处自己print,麻烦的要死...

  10. Windows7下移植Qt4.8.4项目到QT5.2上时遇到的一些问题(包括三篇参考文章)

    文章来源:http://blog.csdn.net/ccf19881030/article/details/18220447 问题一:错误:C1083: 无法打开包括文件:“QApplication” ...