MySQL
失业边缘,疯狂挣扎
这个作者很懒,什么都没留下…
展开
-
196. 删除重复的电子邮箱(MySQL)(删除表中某列值重复的数据)
1 题目2 MySQL2.1 方法一delete p1from Person as p1, Person as p2where p1.Email = p2.Email AND p1.Id > p2.Id;原创 2020-05-18 11:58:58 · 207 阅读 · 0 评论 -
1179. 重新格式化部门表(MySQL)(如何行转列)
1 题目2 MySQL2.1 方法一(行转列)select id, sum(case when month = 'Jan' then revenue end) as Jan_Revenue, sum(case when month = 'Feb' then revenue end) as Feb_Revenue, sum(case when month = 'Mar...原创 2020-05-02 23:32:38 · 178 阅读 · 0 评论 -
183. 从不订购的客户(MySQL)(多表查询——表A存在 但表B不存在的数据)
1 题目2 MySQL2.1 方法一(A left join B on 条件 where B.列 is null)select Name as Customersfrom Customers left join Orders on Customers.Id = Orders.CustomerIdwhere Orders.CustomerId is null;2.2 方法二(...原创 2020-05-02 20:13:43 · 234 阅读 · 0 评论 -
626. 换座位(MySQL)(如何交换数据?)(case when)
1 题目2 MySQL2.1 方法一(case when)注意是case when,不是 case 列select (case when mod(id, 2) != 0 and id = counts then id # 奇数,且是最后一行 when mod(id, 2) != 0 and id != counts then id + 1 # 奇...原创 2020-05-01 20:27:00 · 212 阅读 · 0 评论 -
181. 超过经理收入的员工(MySQL)(自连接)
1 题目2 MySQL2.1 方法一(A join B on 条件)select A.Name as Employeefrom Employee as A join Employee as B on A.ManagerId = B.Id and A.Salary > B.Salary;2.2 方法二(A, B where 条件)select A.Name a...原创 2020-05-01 19:21:48 · 121 阅读 · 0 评论 -
175. 组合两个表(MySQL)(多表查询,各种连接)
1 题目2 MySQL2.1 方法一(外连接)select FirstName, LastName, City, Statefrom Person left join Addresson Person.PersonId = Address.PersonId;3 如何多表查询(外连接)3.1 方法一:表1 left join 表2 on 条件select 列1,列2,列3...原创 2020-04-25 09:51:09 · 133 阅读 · 0 评论 -
620. 有趣的电影(MySQL)(多条件查询+排序(没法union))
1 题目2 MySQL2.1 方法一(不等于,取模,排序)select id, movie, description, ratingfrom cinemawhere description <> 'boring' and id % 2 = 1order by rating desc;写的不好1 != 改用 <>2 取模方法:& mod...原创 2020-04-24 12:32:15 · 203 阅读 · 0 评论 -
627. 交换工资(MySQL)(如何按条件修改数据)
1 题目2 MySQL2.1 方法一()update salaryset sex = ( case sex when 'm' then 'f' when 'f' then 'm' end);2.2 方法二()3 如何按条件修改数据?3.1 方法一:case when thenupdate 表set 列 = ( cas...原创 2020-04-24 12:04:37 · 212 阅读 · 0 评论 -
595. 大的国家(MySQL)(多条件查询)
1 题目2 MySQL2.1 方法一(or)select name, population, areafrom Worldwhere population > 25000000 or area > 3000000;2.2 方法二(union代替or)select name, population, areafrom Worldwhere population &g...原创 2020-04-23 12:16:30 · 174 阅读 · 0 评论 -
182. 查找重复的电子邮箱(MySQL)(如何查找重复数据)
1 题目2 MySQL2.1 方法一(groupby……having)不能把count判断放在where中因为执行顺序是 from、where、groupby、having、selectcount 必须在 groupby 之后执行select Emailfrom Persongroup by Emailhaving count(Email) > 1;2.2 方法二(子...原创 2020-04-23 12:07:29 · 329 阅读 · 0 评论