SQL语句按照最大的类别分为

  1、增加 insert

  2、删除 delete  https://www.cnblogs.com/kuangmeng/p/17756654.html

  3、修改update

  4、查询 select : https://www.cnblogs.com/kuangmeng/p/17756425.html

这一部分为select 查询操作,以及对应的Leecode题,进行加深印象。通常  select * from 表名 ,这条SQL语句代表查询表名的所有数据。

175. 组合两个表

联合两个表进行查询,本人采用的是下面SQL ,但是返回的是 Person.personId = Address.personId 的数据, 与题目中要求 Person表中的数据,如果没有在Address表中出现,city,state 字段变为null

select firstName,lastName,city,state
from Person,Address
where Person.personId = Address.personId

所以采用 left join 、 on 的方式。

其中 left join :是一种连接(JOIN)操作,用于将两个或多个表根据某个相关列进行关联。LEFT JOIN会返回左表中的所有记录,以及右表中与左表匹配的记录。如果在右表中没有找到匹配的记录,则会返回NULL值。

其中 on:ON子句用于指定连接条件,即哪些列需要相等才能将两个表关联起来。

181. 超过经理收入的员工

题目:给定一个表,采用别名as的形式,提取两次表中的数据。

select a.name as 'Employee'  ##### 将a.name 设置别名 为Employee 符合题目要求

select a.name as 'Employee'
from Employee as a,Employee as b
where a.managerId = b.id and a.salary>b.salary

其中 whereand,将两个判断条件连接。

182. 查找重复的电子邮箱

重复字段,暂时采用unique 唯一标识字段  思考再三之后,决定采用group by   +  count 值

count : 遍历表,找到对应字段出现的次数。

group by:若是没有 加后续条件,则按照降序排列。

having:对group by字段添加 附属条件

select email as 'Email'
from Person
group by email
having count(email) > 1;

183. 从不订购的客户

没有出现的用户,根据题目来说,目前的见解,只能采用 not in。

其中not in : 顾名思义   a not in b  ==> 返回所有a 有b 没有的东西。

整体上,将select内置到 not in中。通过相同的字段与字段进行判断。

select name as 'Customers'
from Customers
where Customers.id not in
( select customerId from Orders);

SQL 语句 增删改查、边学习边增加中..... 这一部分为select的更多相关文章

  1. 【黑马Android】(04)数据库的创建和sql语句增删改查/LinearLayout展示列表数据/ListView的使用和BaseAdater/内容提供者创建

    数据库的创建和sql语句增删改查 1. 载入驱动. 2. 连接数据库. 3. 操作数据库. 创建表: create table person( _id integer primary key, nam ...

  2. sql语句增删改查(转)

    一.增:有4种方法 1.使用insert插入单行数据:                  语法:insert [into] <表名> [列名] values <列值>    例 ...

  3. sql语句增删改查(方便你我Ta)

    又自学,把SQL的一些常用语句复习了一遍. 整理如下: 1增 1.1[插入单行]insert [into] <表名> (列名) values (列值)例:insert into Strde ...

  4. SQL 语句(增删改查)

    一.增:有4种方法1.使用insert插入单行数据: --语法:insert [into] <表名> [列名] values <列值> 例:insert into Strden ...

  5. 安卓开发之sql语句增删改查2(利用谷歌封装好的API进行增删改查)

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  6. 安卓开发之sql语句增删改查

    package com.lidaochen.phonecall; import android.content.Context; import android.database.sqlite.SQLi ...

  7. sql语句增删改查与子查询

    修改表 修改表 语法: Alter table <旧表名> rename [ TO] <新表名>; 例子:Alter table `demo01` rename `demo02 ...

  8. 详解数据库引擎与SQL语句增删改查(非常详细,带例)

    数据库系统(DBMS): 专门负责数据管理的工具.增加数据.创建索引.建立索引之间的关联关系.更新索引...... 连接器:PHP要访问MySQL,可以通过API访问,也可以通过PHP的驱动,而那个驱 ...

  9. 数据库基本查询语句(SQL常用增删改查语句 简单复习 mark)

    SQL常用增删改查语句 1增 1.1[插入单行]insert [into] <表名> (列名) values (列值)例:insert into Strdents (姓名,性别,出生日期) ...

  10. 手撸Mysql原生语句--增删改查

    mysql数据库的增删改查有以下的几种的情况, 1.DDL语句 数据库定义语言: 数据库.表.视图.索引.存储过程,例如CREATE DROP ALTER SHOW 2.DML语句 数据库操纵语言: ...

随机推荐

  1. uniapp微信小程序转支付宝小程序踩坑(持续更新)

    首先第一个,真有被折磨到! // 微信正常使用,支付宝不行 <image src="https://static.dabapiao.com/images/coupon-index.pn ...

  2. Java 网络编程 —— 安全网络通信

    SSL 简介 SSL(Secure Socket Layer,安全套接字层)是一种保证网络上的两个节点进行安全通信的协议.IETF(Interet Engineering Task Force)国际组 ...

  3. ShardingSphere5入门到实战

    ShardingSphere5入门到实战 第01章 高性能架构模式 互联网业务兴起之后,海量用户加上海量数据的特点,单个数据库服务器已经难以满足业务需要,必须考虑数据库集群的方式来提升性能.高性能数据 ...

  4. 为什么使用ioutil.ReadAll 函数需要注意

    1. 引言 当我们需要将数据一次性加载到内存中,ioutil.ReadAll 函数是一个方便的选择,但是ioutil.ReadAll 的使用是需要注意的. 在这篇文章中,我们将首先对ioutil.Re ...

  5. FFmpeg+SDL实时解码和渲染H264视频流

    前言 之前实现了Android手机摄像头数据的TCP实时传输,今天接着聊聊,如何在PC端把接收到的H264视频流实时解码并渲染出来.这次使用的语言是C++,框架有FFmpeg和SDL2. 解码 解码部 ...

  6. ISP图像处理之Demosaic算法及相关

    CFA及Demosaic介绍 1.Bayer(拜耳滤波器得到彩色) 图像在将实际的景物转换为图像数据时, 通常是将传感器分别接收红. 绿. 蓝三个分量的信息, 然后将红. 绿. 蓝三个分量的信息合成彩 ...

  7. 使用docker安装的tomcat部署activiti-app.war、activiti-admin.war失败(ClassNotFoundException)

    背景 一直以来习惯用docker配置一些本地学习环境,许多教程配置activiti的方式都是通过复制activiti的war包部署在tomcat中,我尝试了一下通过docker的方式遇到了一些不易察觉 ...

  8. 图片转ASCII字符图案的原理(可调整亮度对比度 宽高度)

    来, 先看效果哈哈哈哈! 演示地址: http://ascii-picture.imlht.com/ "\` """ . "\`"" ...

  9. Codeforces Round #888 (Div. 3) A-G

    比赛链接 A 代码 #include <bits/stdc++.h> using namespace std; using ll = long long; bool solve() { i ...

  10. 你知道ES6中的这些属性吗

    ES6,也称ESMAScript2015,这个版本增加了很多好用的特性 变量声明 ES6之前用var来定义变量,ES6增加了两个变量声明的方式,分别为const和let,const用来定义常量,let ...