关于sql语句的反勾号``补充
在前面已经说过了,在添加表、字段等名称时尽量使用反勾号括住;
但是在后面的联表查询时和一开始的情况不大一样;
的确在表和字段中都用比较好,但是下面不大一样,也就是联表取两个表中的相同值时
注意,在联表查询之前,我都给字段名和表名加上了反勾号!
1、正确情况
在两个表中的相同字段名中没有加反勾号,其它都加
-- --------------- 联表查询 join -------------------------------
-- 查询参加了考试的同学(学号,姓名,科目编号,分数)
/*思路
1.分析需求,分析查询的字段来自哪些表(连接查询)
2.确定使用哪种连接查询?7种
3.确定交叉点(这两个表中哪个数据是相同的)
4.判断的条件:学生表 studentno = 成绩表 studentno*/
SELECT s.studentno,`studentname`,`subjectno`,`studentresult`
FROM `student` AS s
INNER JOIN `result` AS r
WHERE s.studentno = r.studentno;
结果如下:
2、 错误情况
在两个表中的相同字段名中加了反勾号
SELECT `s.studentno`,`studentname`,`subjectno`,`studentresult`
FROM `student` AS s
INNER JOIN `result` AS r
WHERE `s.studentno` = `r.studentno`;
结果如下:
警告:Unknown column ‘s.studentno’ in ‘field list’
文件列表中没有这个字段;在这它也没有提示说没有r.studentno
所以我想着试试r.studentno
可不可以。
3、错误r.studentno
结果表明在联表查询里,在拥有相同的字段时相同字段最好不要加反勾号
4、正确查询
全都不加反勾号,当然前提是我的字段名和表名不和关键字冲突,当然,冲突的名称,你可以加上反勾号,其它加不加都行;
SELECT s.studentno,studentname,subjectno,studentresult
FROM student AS s
INNER JOIN result AS r
WHERE s.studentno = r.studentno;
5、全都加反勾号(注意反勾号位置)
SELECT s.`studentno`,`studentname`,`subjectno`,`studentresult`
FROM `student` AS s
INNER JOIN `result` AS r
WHERE s.`studentno` = r.`studentno`;
在这里记得不要把别名括住
当然,查询成功的前提还是得建表正确·
因为自己学到这里的时候浪费了点时间,就想着记录一下,希望文章对大家有点点帮助,少浪费点时间~fighting
关于sql语句的反勾号``补充相关推荐
- 关于SQL反勾号或者叫飘号(``)
在这个问题上:自己简单在网上查了一下: 如果自己觉得反勾号麻烦,就不用了吧,自己能掌握在给相关数据取名的时候别和相关关键字冲突就行!!!!其实能取名和关键字有冲突的还是很小的几率. 如果对自己的格式要 ...
- mysql中何时需要引号,何时在MySQL中使用单引号,双引号和反勾号
匿名用户 背勾用于表和列标识符,但只有当标识符是MySQL保留关键字,或者标识符包含空格字符或超出有限集合的字符(见下文)时才有必要.通常建议尽可能避免使用保留关键字作为列或表标识符,以避免引用问题. ...
- mysql的单引号[ ' ],双引号[ ]和esc下面的反勾号[ ` ]的区别
这两天写sql的时候,发现别名什么的喜欢直接使用双引号, 可是好像有时候用双引号会报错,或者单引号会报错, 所以详细把这三个符号区分了一下. 单引号 ' 和双引号 "都可以表示字符串,所以没 ...
- 关于perl中的反勾号(``),system和exec
关于perl中的反勾号(``),system和exec 在perl中反勾号(``),system和exec都用来执行命令,这篇文章将给我们介绍它们各自的使用方法,联系,以及区别. 一.使用方法 1. ...
- perl中的反勾号(``),system和exec
在perl中反勾号(``),system和exec都用来执行命令,这篇文章将给我们介绍它们各自的使用方法,联系,以及区别. 一.使用方法 1. 反勾号(``) 首先,我们有命令输入操作符, ...
- mybatis中sql语句中大于小于号的两种解决方法
1.使用<![CDATA[]]>,因为CDATA 部分中的所有内容都会被解析器忽略,所以建议使用<![CDATA[]]> 来解决小于号问题:实例:<![CDATA[ sq ...
- mysql 怎么用SQL语句将老身份证号15位补位到新身份证号18位
一.15位的身份证和18位的身份证的区别是什么? 只有15位号码的就是第一代身份证,而18位号码的则是第二代身份证.15位的身份证和18位的身份证的区别是:第二代身份证比第一代身份证增加了出生年份中的 ...
- MySQL笔记-SQL语句中可以使用单引号包裹任意类型
最近看了个大佬写的PHP项目,在此膜拜下. 其中发下如下几句: public function autoUpdate($id,$data){$where = " where {$this-& ...
- mysql特殊字符小于 大于_MySQL 中SQL语句特殊字符如何处理(大于号, 小于号等)
前言: 我们在使用mybatis时SQL是写在xml映射文件中,如果写的sql中有一些特殊字符的话,在解析xml文件的时候会被转义,但我们不希望他被转义,因为转义之后可能会出现一些问题比如SQL语句无 ...
最新文章
- 机器学习中的数学基础:(1.1)矩阵特征值和特征向量的几何意义
- GE刚刚换帅,就向艾默生出售智能平台业务?刚刚换帅,GE又向艾默生出售智能平台业务,未来究竟何去何从?...
- Majority Element:主元素
- Volatile缓存可见性实现原理(JMM数据原子操作具体步骤)
- android升级功能键,Android 按键添加转载
- 自然语言处理在医学领域的应用
- Postgresql多线程hashjoin(inner join)
- 前端工程师需要学习ps 吗_转行学习web前端开发,需要哪些工具和需要学习什么?...
- 初级程序员面试不靠谱指南(四)
- 使用jave(ffmpeg)将.amr音频转码成mp3
- 隐藏通信隧道技术:内网穿透工具 nps
- 计算机突然断电或死机 重启后,电脑重启死机故障排除
- Wordpress采集开心版,免费Wordpress采集发布伪原创
- matlab示波器有毛刺,在使用示波器时如何消除毛刺?
- java对pdf文件进行加密操作
- java爬虫写一个百度图片下载器
- 自我规范模版A要求2:展示数据列表 (无从表)和导出数据页面
- 想要刚毕业就月入过万必须要懂这些面试题(Vue 篇)
- 用计算机解决问题时 为什么要用计算思维,在亲历计算机解决问题的全过程中发展计算思维...
- ORB-SLAM3从理论到代码实现(二):Optimizer局部地图优化