首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL编程基础

⽤户会话变量 MySQL客户机1定义了会话变量,会话期间,该会话变量⼀直有效;MySQL客户机2不能访问ySQL客户 机1定义的会话变量;MySQL客户机1关闭或者MySQL客户机1与服务器断开连接后,...局部变量如果作为存储过程或者函数的参数使⽤,则在整个存储过程或函数内中有效;如果定义在存储程序的 begin-end语句块中,则仅在当前的begin-end语句块内有效。...⽤户会话变量在本次会话期间⼀直有效,直⾄关闭服务器连接。 如果局部变量嵌⼊到SQL语句中,由于局部变量名前没有“@”符号,这就要求局部变量名不能与表字段名同名,否则将出现⽆法预期的结果。...函数必须指定返回值数据类型,且须与return语句中的返回值的数据类型相近(⻓度可以不同)。 函数选项: contains sql:表示函数体中不包含读或写数据的语句(例如set命令等)。...no sql:表示函数体 中不包含SQL语句。 reads sql data:表示函数体中包含select查询语句,但不包含更新语句。 modifies sql data:表示函数体包含更新语句。

2.3K10

MySQL面试题

,不要返回不需要的列 b)索引应该尽量小,在字节数小的列上建立索引 c)Where子句中有多个表达式时,包含索引的表达式应置于其他条件表达式之前 d)避免在ordery by子句中使用表达式 e)根据业务数据发送频率...,定期重新生成或重新组织索引,进行碎片整理 查询时减少使用*返回全部列,不要返回不需要的列 a)频繁搜索的列 b)经常用作查询的列 c)经常排序,分组的列 d)经常用作连接的列(主键/外键) 请不要用以下列创建索引...查询没学过李老师课的同学的学号、姓名 SELECT * FROM Student WHERE sid NOT IN( --子查询返回多个结果时使用in连接,不在此范围可使用...AS 'Java语言编程', sum(CASE cname WHEN 'MySQL数据库编程' THEN score END) AS 'MySQL数据库编程', sum(CASE cname...if(cname='Java语言编程',score,0) ——> 那么结构中的null值会变成0 在上面结果中筛选出Java成绩80分以上的同学,并且排序 select * from( select

24660
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL必知必会笔记(1)

    where prod_name = "JetPack 1000"; mysql的搜索模式匹配默认不区分大小写 常用通配符: %:匹配任意字符出现任意次数(包括0) _: 匹配单个任意字符 找到所有产品名以...0个或1个匹配(等于{0,1}) {n} 指定数目的匹配 {n,} 不少于指定数目的匹配 {n,m} 匹配数目的范围: n到m(m不超过255) select prod_name...' regexp '[0-9]'; # 返回 0 select 'hello' regexp '[:alnum:]'; # 返回 1 创建计算字段 字段等价于数据库中表的某一列 -- 1.拼接字段 select...如果在select中使用表达式,则必须在group by子句中指定相同的表达式。不能使用别名。 除聚集计算语句外,select语句中的每个列都必须在group by子句中给出。...,则在相应位置上的值为NULL,左外连接的结果行数等于左表的行数 右外连接(right outer join):以第二个关系(右表)为主,在第一个关系(左表)中根据匹配条件找到满足条件的元素,并把他们连接起来

    1.6K10

    Mysql优化-索引

    explain显示了MySQL如何使用索引来处理select语句以及连接表。 可以帮助选择更好的索引和写出更优化的查询语句。...select_type A:simple:表示不需要union操作或者不包含子查询的简单select查询。...其他数据库也叫做唯一索引扫描 eq_ref 出现在要连接过个表的查询计划中,驱动表只返回一行数据,且这行数据是第二个表的主键或者唯一索引,且必须为not null,唯一索引和主键是多列时,只有所有的列都用作比较时才会出现...或者多列主键、唯一索引中,使用第一个列之外的列作为等值查找也会出现,总之,返回数据不唯一的等值查找就可能出现。...Range checked for each Record 没有找到理想的索引,因此对于从前面表中来的每一个行组合,MYSQL检查使用哪个索引,并用它来从表中返回行。这是使用索引的最慢的连接之一。

    1.3K50

    数据库SQL语句大全——最常用的SQL语句

    指示mysql返回从行5开始的5行记录 排序检索数据: 排序数据 SELECT pname FROM product ORDER BY pname 按多个列排序数据 SELECT pid,market_price...它表示匹配任意一个字符 Mysql中的正则表达式不区分大小写,如果要区分大小写可以使用BINARY SELECT pname FROM product WHERE pname REGEXP BINARY...0个或1个匹配(等于{0,1}) {n} 指定数目的匹配 {n,} 不少于指定数目的匹配 {n,m} 匹配数目的范围(m不超过255) 定位符 ^ 文本的开始 $ 文本的结尾 [[::]] 词的结尾 创建计算字段 连接字段(将商品名称和商品价格连接起来) SELECT CONCAT(pname,'(',market_price,')') FROM product ORDER...这可能会改变计 算值,从而影响HAVING子句中基于这些值过滤掉的分组。

    3K30

    hhdb数据库介绍(9-28)

    user - 连接计算节点执行SQL的用户(包括主机名)。host - 连接计算节点所指定的host值。logic_db - 连接计算节点执行SQL所use 的逻辑库。...connection_id - 执行SQL所使用的前端连接ID。command - 具体执行SQL的语句(SQL原语句)。query_rows - 返回的数据行数(主要体现在SELECT操作上)。...routeByRelativeCo参数说明:PropertyValue参数值routeByRelativeCol是否可见否参数说明不包含分片字段时通过辅助索引字段路由默认值falseReload是否生效是参数设置...--不包含分片字段时通过辅助索引字段路由-->参数作用:默认此功能关闭,即不包含分片字段时不通过辅助索引字段路由,修改为true后开启。...开启后支持在SELECT查询语句中不包含分片字段但包含全局唯一约束字段时,通过查询辅助索引定位到具体节点,将SELECT查询语句仅下发到指定的节点而非下发到所有节点。

    8010

    MySQL学习笔记-基础介绍

    ,Students.Cource; 6.3.2 内连接查询 内连接是最普通的连接类型,而且是最匀称的,因为它们要求构成连接的每一部分与每个表匹配,不匹配的行将被排除在最后的结果集之外。...因此,要定义列标题必须在第一个select语句中定义。要对联合查询结果排序时,也必须使用第一个select语句中的列标题。...用于将多行合并成一行,返回一个由多个值组成的字符串 mysql 流程控制函数 函数名称 作用 if 判断,流程控制 ifnull 判断是否为空 case 搜索语句 不同进制的数字进行转换 函数名称...else vn end   case表示函数开始,end表示函数结束。如果e1成立,则返回v1,如果e2成立,则返回v2,当全部不成立则返回vn,而当有一个成立之后,后面的就不执行了。...select case   when 1 > 0   then '1 > 0'   when 2 > 0   then '2 > 0'   else '3 > 0'   end ->1 > 0 语法2

    30610

    经典sql server基础语句大全

    select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end...SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。...不指定该项时,被联合查询结果集合中的重复行将只保留一 行。 联合查询时,查询结果的列标题为第一个查询语句的列标题。因此,要定义列标题必须在第一个查询语 句中定义。...连接可以在SELECT 语句的FROM子句或WHERE子句中建立,似是而非在FROM子句中指出连接时有助于 将连接操作与WHERE子句中的搜索条件区分开来。...不指定该项时,被联合查询结果集合中的重复行将只保留一 行。 联合查询时,查询结果的列标题为第一个查询语句的列标题。因此,要定义列标题必须在第一个查询语 句中定义。

    2.7K20

    sql 复习练习

    select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end...set nocount {on|off} 使返回的结果中不包含有关受 Transact-SQL 语句影响的行数的信息。...SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。...不指定该项时,被联合查询结果集合中的重复行将只保留一 行。 联合查询时,查询结果的列标题为第一个查询语句的列标题。因此,要定义列标题必须在第一个查询语 句中定义。...不指定该项时,被联合查询结果集合中的重复行将只保留一 行。 联合查询时,查询结果的列标题为第一个查询语句的列标题。因此,要定义列标题必须在第一个查询语 句中定义。

    2.1K60

    经典的SQL 语句大全

    select type,sum(case vender when 'A' then pcs else 0 end),sum(case vender when 'C' then pcs else 0 end...SET NOCOUNT 为 ON 时,不返回计数(表示受 Transact-SQL 语句影响的行数)。...不指定该项时,被联合查询结果集合中的重复行将只保留一 行。 联合查询时,查询结果的列标题为第一个查询语句的列标题。因此,要定义列标题必须在第一个查询语 句中定义。...连接可以在SELECT 语句的FROM子句或WHERE子句中建立,似是而非在FROM子句中指出连接时有助于 将连接操作与WHERE子句中的搜索条件区分开来。...不指定该项时,被联合查询结果集合中的重复行将只保留一 行。 联合查询时,查询结果的列标题为第一个查询语句的列标题。因此,要定义列标题必须在第一个查询语 句中定义。

    1.9K10

    mysql汇总

    索引是对数据库表中一列或多列的值进行排序的一种结构。类似于书籍的目录。 MySql介绍 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。...多表联查: 什么是连接查询 也可以叫跨表查询,需要关联多个表进行查询 什么是笛卡尔集 假设集合A={a,b},集合B={0,1,2}, 则两个集合的笛卡尔积为{(a,0),(a,1),(a,2...一个select语句中包含另一个完整的select语句。...t,否则返回f IFNULL(value1,value2) 如果value1不为空,返回value1否者返回value2 CASE WHEN THEN END 其他常用函数 DATABASE() 返回当前数据库名...视图不可更新部分 聚合函数; DISTINCT 关键字; GROUP BY子句; HAVING 子句; UNION 运算符; FROM 子句中包含多个表; SELECT 语句中引用了不可更新视图; 只要视图当中的数据不是来自于基表

    26710

    玩转Mysql系列 - 第6篇:select查询基础篇

    DQL(Data QueryLanguage):数据查询语言,通俗点讲就是从数据库获取数据的,按照DQL的语法给数据库发送一条指令,数据库将按需求返回数据。 DQL分多篇来说,本文属于第1篇。...基本语法 select 查询的列 from 表名; 注意: select语句中不区分大小写,SELECT和select、FROM和from效果一样。...函数; 如: mysql> select mod(10,4),isnull(null),ifnull(null,'第一个参数为空返回这个值'),ifnull(1,'第一个参数为空返回这个值,否知返回第一个参数...isnull函数,判断参数是否为空,若为空返回1,否则返回0。 ifnull函数,2个参数,判断第一个参数是否为空,如果为空返回第一个参数的值,否则返回第一个参数的值。...,(3,'c'); Query OK, 3 rows affected (0.01 sec) Records: 3 Duplicates: 0 Warnings: 0 mysql> select

    1.9K21

    【MySQL 系列】MySQL 语句篇_DQL 语句

    ,offset 指定返回的第一行的偏移量 2、MySQL 中 的 DQL 语句详解 2.1、DQL 语句:SELECT FROM SELECT FROM 语句用于从一个或多个表中检索数据,是 MySQL...AND 运算的结果为 0;④ 如果两个操作数中有一个为 NULL,且另一个不为 0 (FALSE),则返回 NULL;⑤ 两个操作数的前后顺序不影响 AND 操作符的运算结果; ⑥ WHERE 子句中的...MySQL 字符串模式支持两个通配符:“%” 和 “_”,且当使用通配符匹配文本时,不区分字母大小写。...语句或者 WHERE 子句中;② 当 IS NULL 运算符左侧的操作数是 NULL 时,IS NULL 运算符返回 1,否则返回 0。...SELECT * FROM employees LIMIT 60,10; # 限定返回数量 10 ,偏移量 60 2.7、DQL子查询 MySQL 子查询是嵌套一个语句中的查询语句,也被称为内部查询

    19310

    hhdb数据库介绍(9-26)

    maxConnections是前端连接的最大连接数,是计算节点所允许的同时前端数据库连接数的上限。用户可以根据实际需要设置maxConnections,适当调整该值,不建议盲目提高设值。...中间结果集的计算方法:当SQL语句中没有条件时,计算笛卡尔积;当SQL语句中有条件时,计算符合join条件的行数。...maxNumberForSelect参数说明:PropertyValue参数值maxNumberForSelect是否可见是参数说明SQL查询结果的数据最大返回条数默认值0最小值0最大值0Reload是否生效否参数设置...-- 控制SQL查询语句返回的最大结果条数(为0代表不限制,最>大:1000)(The max number limits of results returned by SQL query, 0 for...no limit, max: 1000) -->参数作用:控制SQL查询语句返回的最大结果条数(为0代表不限制)。

    6710
    领券