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

Mysql常用sql语句(5)- as 设置别名

测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 需要注意,创建数据库和创建表的语句博文都在前面哦 整个系列都是相互关联的哈...,需要用到前面创建的数据库和表哦(系列博文第一篇和第二篇) 前言 可以给字段 or 数据表取别名 取别名的好处就是:如果数据表太长或者字段名太长,查询结果显示就不够优雅,而且取别名还能中文命名,何乐而不为...特别注意 表名取的别名不能和其他表名相同,字段名取的别名不能和其他字段名相同 取别名的语法格式 谨记:as是可以忽略不写的哦 [AS] 别名> [AS] 别名> 取别名的实际栗子...知识点 这里乍眼一看表名取别名没用,其实是很有用的,只是现在还没讲;表名取别名的常用场景:条件查询,子查询,多表查询

1.6K10

一个奇怪的SQL问题

今天在进行SQL审核的时候,遇到了一个奇怪的SQL,SQL如下: create table datatype10 (d_tinyint int not null default 1 comment...于是将这个SQL通过拷贝的方式给同事看看,同事拿到SQL在他那边跑了一下,输出的结果如下: ?...语句也看人品么,我不服,重新尝试了自己的SQL,还是一直报错: ?...果然是这样的,到底是什么原因导致这种问题呢,肯定是两者的内容有不一样的地方,于是将两个SQL语句放在一个文件里面,利用: cat -v 文件名 命令,查看文件中的隐藏字符,结果如下: ?...一个小小的问题,疑惑和很久,于是想着,既然有问题,就直接把这个奇怪的字符换成一个可见的字符处理一把,看看结果有什么差异,于是有了下面的SQL: create table datatype10 (d_tinyint

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

    两个看似奇怪的MySQL语句问题

    今天同事给了我一个文件需要更新下CMDB的数据,提供的内容是excel的形式,因为条目比较多,我需要做一些转换,批量修改成对应的SQL语句,因为只有我知道这个逻辑,所以这个转换工作由我来做。...本来看起来很简单的一个问题,结果因为不经意的操作出了两个问题,会牵扯出来两条有趣的SQL问题。...我需要把数据转换成SQL语句,类似下面的形式: update cmdb_server set server_app_code = trim('TEST1 ') where server_ip_addr...我把语句给转换成了这样,很快就编辑好了,但是执行语句之后发现没有生效,真是奇怪,自己抽出一条语句来单独执行看看,发现结果竟然有这样的提示,影响到的行数有500多行,这看起来就麻烦了。...0.00 sec) mysql> insert into test values (3,'cc','aaac'); Query OK, 1 row affected (0.00 sec) 然后使用这种奇怪的

    1.1K70

    SQL语句的优化

    SQL语句的优化 如何索取有性能问题SQL的渠道 通过用户反馈获取存在性能问题的SQL 通过慢查日志获取存在性能问题的SQL 实时获取存在性能问题的SQL 慢查询日志介绍 slow_quey_log=on...表示只有在查询语句中使用了SQL_CACHE和SQL_NO_CACHE来控制是否需要进行缓存 query_cache_size 设置查询缓存的内存的大小 query_cache_limit 设置查询缓存可用的存储的最大值...优化SQL的查询计划 语法解析阶段是通过关键字对MySQL语句进行解析,并生成一颗对应的解析树 MySQL解析器将使用MySQL语法规则验证和解析查询,包括检查语法是否使用了正确的关键走;关键字的顺序是否正确等等...; 预处理阶段是根据MySQL规则进一步检查解析树是否合法 检查查询中所涉及的表和数据列是否存在及名字或别名是否存在歧义等等 语法检查通过了,查询优化器就可以生成查询计划了 优化器SQL的查询计划阶段对上一步所生成的执行计划进行选择基于成本模型的最优的执行计划...FROM payment ) #优化后的SQL语句 SELECT a.customer_id, a, first_name, a.last_name, a.email FROM customer a

    3.3K00

    SQL 的查询语句

    在这里,有一点要说明下,SQL 语句不区分大小写,意思是我们可以使用大写或者小写,都是可以的。像刚才的语句我们可以使用,use order_manager。...对于单条 SQL 语句来说,在结尾处加分号或者不加分号都是可以的。但是多条 SQL 语句必须以分号分隔。虽然单条语句不强制加分号,但是加上也没有什么不好,所以我们建议单条 SQL 语句也加上分号。...还有点要注意,刚才说的标点符号要是英文的标点符号,如果使用中文的标点符号会报错。还有就是,在处理 SQL 语句时,所有的空格都会被忽略,我们可以把一条 SQL 语句写在一行上,也可以分开写在多行上。...但是比较好的习惯是,将 SQL 语句写在多行上,这样使得代码更容易阅读和调试。 刚才我们从数据库表中查询的是单个列,我们还可以从数据库表中查询多个列。...注释 随着 SQL 语句越来越复杂,我们需要添加一些注释,便于自己以及别人参考。

    2.7K30

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

    = 不等于 < 小于 <= 小于等于 > 大于 >= 大于等于 BETWEEN 在指定的两个值之间 数据过滤: 组合where语句 and操作符(同时符合where后面的条件) SELECT pname...AS 给字段赋予别名 SELECT CONCAT(pname,'(',market_price,')') AS nameAndPrice FROM product ORDER BY pname 执行算术运算...LENGTH() 返回串的长度 LOCATE() 找出串的一个子串 LOWER() 将串转换为小写 LTRIM() 去掉串左边的空格 RIGHT() 返回串右边的字符 RTRIM() 去掉串右边的空格...() 返回一个角度的正弦 SQRT() 返回一个数的平方根 TAN() 返回一个角度的正切 汇总数据 聚集函数 AVG() 返回某列的平均值 COUNT() 返回某列的行数 MAX() 返回某列的最大值...SELECT语句的执行顺序 SELECT 要返回的列或表达式 是 FROM 从中检索数据的表 仅在从表选择数据时使用 WHERE 行级过滤 否 GROUP BY 分组说明 仅在按组计算聚集时使用 HAVING

    3K30

    oracle的游标 sql语句,sql游标

    大家好,又见面了,我是你们的朋友全栈君。...sql游标 游标的类型: 1、静态游标(不检测数据行的变化) 2、动态游标(反映所有数据行的改变) 3、仅向前游标(不支持滚动) 4、键集游标(能反映修改,但不能准确反映插入、删除) 游标使用顺序: 1...][STATIC | KEYSET | DYNAMIC ] [READ_ONLY | SCROLL_LOCKS] for selet语句 [for update[of 列名[,列名]] 注:LOCAL...n行 into 变量 把当前行的各字段值赋值给变量 游标状态变量: @@fetch_status 游标状态 0 成功 -1 失败 -2 丢失 @@cursor_rows 游标中结果集中的行数 n...行数 -1 游标是动态的 0 空集游标 操作游标的当前行: current of 游标名 以下例子,在SQL SERVER 2000 测试成功 use pubs go declare @auid char

    1.5K20

    sql语句的多种写法

    sql formatter 1 2 精妙SQL语句 Bill Gates 眼中的聪明人 不可不看:人生十二个经典的感悟 精妙SQL语句介绍 Oracle Union All Query...根据指定ID,返回包含该ID的所有父级记录 一个DETAIL 表, item ,empid, money 1       001    100 2       001     150 ...   ...一个 TOTAL 表, empid ,  money 目的是想把DETAIL 表的每个empid 的数据汇总插入到TOTAL 表中, 写的语句是这样地, 写法1:   update total a set...*/ col1 from cbotab;   select /*+ index(a cbotab1) */ col1 from cbotab a;   其中    TABLE_NAME是必须要写的,...且如果在查询中使用了表的别名,在hint也要用表的别名来代替表名; INDEX_NAME可以不必写,Oracle会根据统计值选一个索引;    如果索引名或表名写错了,那这个hint就会被忽略;

    78820

    SQL 语句的执行顺序

    代表与该客服人员通话的客户的 id,也是说,每有一条记录,就代表一个客服与一位客户进行了通话,相同的记录,例如第一行和第七行,代表着 1 号客服与 001 号客户在不同的时间进行了两次通话,问:如下 SQL...SQL 语句的书写顺序如下: SELECT -> FROM -> WHERE -> GROUP BY -> HAVING -> ORDER BY SQL 语句的执行顺序如下: FROM -> WHERE...-> GROUP BY -> HAVING -> SELECT -> ORDER BY 其中 SELECT 和 FROM 是必须的,其他关键词是可选的,这六个关键词的执行顺序 与SQL语句的书写顺序并不是一样的...,或列的计算结果 ORDER BY:按照什么样的顺序来查看返回的数据 所以本文开头所说的查询有两种实现的 SQL: # 使用 HAVING 过滤分组中的数据 SELECT id, COUNT(client...) AS count FROM table1 GROUP BY id HAVING count > 1; # 使用内嵌视图(子查询),让 WHERE 可以引用别名 SELECT * FROM

    3.6K41

    sql语句中(+)的作用

    表b是工资表,有a,b,d四个员工,工资对应的是1000,2000,4000。然后分别演示带(+)符号的和不带(+)符号的,结果如下。...不带(+)时,a表中的没有出现工资为空的员工c。 对(+)号的解释 **(+) 表示外连接。**条件关联时,一般只列出表中满足连接条件的数据。...如果条件的一边出现(+),则另一边的表就是主表,主表中的所有记录都会出现,即使附表中有的记录为空 (+)的扩展:SQL表连接 SQL表连接分类 内连接,外连接,交叉连接,其中外连接包括左连接和右连接。...SQL表连接示例 内连接 SQL> select a.name,b.money from a,b where a.name=b.name; SQL> select a.name,b.money from...参考: SQL Server 数据库 (+) 这个是什么意思 SQL表连接查询(inner join、full join、left join、right join)

    1.3K10

    关于sql语句的优化

    最近在做mysql的数据库优化以及对sql语句优化的指导,写了一点文档,这个大家共勉一下!...因此可以肯定,通过优化应用程序来对数据库系统进行优化能获得更大的收益。 通常可分为两个方面: SQL语句的优化和数据库性能调优。应用程序对数据库的操作最终要表现为SQL语句对数据库的操作。...解释:这是因为,ORACLE的sql的处理底层,默认就将所有的sql语句,进行大写转换。Mysql和oracle是同一家公司,不排除哪一天mysql和oracle都做的一样了。...3.2 sql语句中不能存在* 在所有的查询sql语句中,不能存在*符号。即,SELECT *FORM 。举例我们的部门表的查询。...用*号,sql语句查询底层会默认去字       典库里查询公有多少个字段,然后在一个一个的取。如果不使用*,就不是去先查字典库。

    97740

    经典的SQL 语句大全

    ,服务器名称中输入的是发布服务器的IP) 开始--程序--Microsoft SQL Server--客户端网络实用工具 --别名--添加 --网络库选择"tcp/ip"--服务器别名输入SQL服务器名...但是在这里我们选择运行"SQL SERVER 2000"的数据库服务器 (5)单击[下一步]系统就弹出一个定义文章的对话框也就是选择要出版的表 注意: 如果前面选择了事务发布 则再这一步中只能选择带有主键的表...别名 表名 别名 (二) FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视图。...别名 表名 别名 例如上面语句可用表的别名格式表示为: SELECT username,b.cityid FROM usertable a, citytable b WHERE a.cityid...别名 表名 别名 例如上面语句可用表的别名格式表示为: SELECT username,b.cityid FROM usertable a,citytable b WHERE a.cityid

    1.9K10

    常用的标准SQL 语句

    1.创建数据库的语句如下:     Create database databaseName     上述语句创建一个名字叫 databaseName 的数据库 2.删除数据库的语句如下。     ...Drop database databaseName     上述语句将删除databaseName 数据库 3.创建表的格式如下:     Create table tableName     (column1...[Constrain primary key pk_table_name(column_n)]       以SQLServer 数据库为例,用SQL语句穿件用户表user,该表有 id,name,password...(id int,name varchar(50),passworld varchar(50),email varchar(50),age int, birthday datetime); 4.删除表的语句如下...drop table [user]; 5.插入一条记录的语句格式如下:     insert into tableName (column1,column2,...) values (value1,value2

    1.4K100
    领券