`
ileson
  • 浏览: 214960 次
  • 性别: Icon_minigender_1
  • 来自: 河南省
社区版块
存档分类
最新评论

MySql sql 备忘

阅读更多
**************************************
****MySql sql 查询备忘****
**************************************
一、外连接:
1、左外连接(把join左边表里的所有数据都查出来。然后把join 右边表中的符合条件的数据加在左边表的后面。。。。)
SELECT * FROM t_empl_info as a LEFT OUTER JOIN t_dept as b 
ON a.dept_no=b.dept_id

--通常情况下是:左边表是多方表。右边表是一方表
--三张表的左外连接
SELECT *
FROM A left join B
on A.a=B.a 
left join C on B.b = C.b;

二、嵌套查询
有两张一对多的表。 A 为一方表,B 为多方表。
select a.*,(select count(*) from B as b where 1=1 and a.x=b.x)as NUM--b 表中外键是a 表主键。
from A as a where 1=1

----例:混合性查询---
---------下例为:查出主表下其中一个,共有多少明细。(相当于某个部门共有多少名员工)
1、
select a.*,(select count(*) from B as b where a.id=b.id) as NUM
from A as a left join C as c on a.x=c.x
where 1=1 and qc_stat not in(1)

2、前提:a 部门表 b 员工表
a表字段(
id --部门编号
departmentName-部门名称
)
b表字段(
id--部门编号
employee- 员工名称
)

问题:如何一条sql语句查询出每个部门共有多少人
select count(b.id)as employeecount,a.departmentName from a
left join b on a.id=b.id
group byb.id,a.departmentName

**************************************
****MySql sql other备忘****
**************************************
1、新增明细时。主表总数加一
update t_prod_list set num=num+1 where id =?

2、得到最大值
select max(ID) AS ID ,a.PROD_NO from t_prod_list_details as a GROUP by a.id desc

---group by 功能:分组查询。如下例:
ID 名称 仓库 数量
01 西瓜 一号 10
02 西瓜 二号 30
03 大米 一号 30
04 苹果 一号 40
05 苹果 二号 45
06 苹果 三号 5


Select name,Sum(price) From 表 Group By name



以上SQL将返回各种商品的总数量,而不管是哪个仓库的..

结果:

西瓜,40
大米,30
苹果,90
--------------------------------------------------------------------------
现有两张表:
部门表dept(deptid,deptname)
员工表emp(empid,deptid,empname)
问题:查有员工的部门?
1、
select a.* from dept as awhere a.deptid in(select b.deptid from emp as b were a.deptid=b.deptid);

2、
select a.* from dept as awhere (select count(*) from emp as b were a.deptid=b.deptid)>0


--查询重复记录
select distinct t1.id,t1.usercode from t_consumer t1, t_consumer t2 where t1.id != t2.id and t1.usercode = t2.usercode


select * from t_consumer
where cardnum in(select distinct cardnum from t_consumer group by cardnum having count(cardnum)>1)

----删除重复记录(保留一条)------------------
    http://www.cnblogs.com/congcong/archive/2008/11/07/1328834.html
----删除有重复的记录:
delete from t_consumer
where cardnum in(select distinct cardnum from t_consumer group by cardnum having count(cardnum)>1)


四、MySql 内置函数使用。
1、拼接字符串
select concat(xiaoqubianhao,'-',louhao ,'-',danyuan,'-',menpaihao) from t_userinfo

2、----字段补零----------
select right(concat('0000',id),5) as id   from table

1 显示为 00001
2 显示为 00002
999 显示为 00999
1000 显示为 01000
分享到:
评论

相关推荐

    java+Mysql开发的备忘录系统

    1. 添加备忘录:用户可以输入标题和内容,点击“创建”按钮,Java程序将这些信息封装成SQL INSERT语句,提交到MySQL数据库中。 2. 修改备忘录:用户选择要修改的备忘录后,系统加载其详情,用户可更新内容,然后...

    MySQL学习备忘笔记.zip

    这篇“MySQL学习备忘笔记”涵盖了MySQL的基础知识、安装与配置、SQL语句、表的设计、索引、事务处理、备份与恢复、性能优化等方面,旨在帮助初学者快速掌握MySQL的核心技能。 1. **MySQL基础** - 数据库概念:理解...

    基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip

    基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 基于SpringBoot+Vue的备忘录系统源码+sql数据库(课程大作业).zip 【资源说明】 项目...

    MySQL两页纸备忘单

    ### MySQL两页纸备忘单知识点详解 #### 连接MySQL - **使用MySQL命令行客户端连接MySQL服务器**: - 当需要通过命令行连接到MySQL服务器时,可以使用以下命令: ```bash mysql -u [username] -p ``` - 输入该...

    web个人日历备忘系统-c#-sql

    开发者可能使用了SQL Server或者MySQL等数据库管理系统,创建了相应的数据表来存储用户信息和备忘记录。 【Web 日历】部分,开发者设计了一个直观的日历界面,用户可以通过日历视图查看每天的备忘。这通常涉及到...

    MYSQL 命令备忘

    MySQL是世界上最流行的关系型数据库管理系统之一,用于存储和管理数据。在本文中,我们将深入探讨如何使用MySQL命令行客户端进行数据库管理和操作。 首先,我们来看如何连接到MySQL服务器。连接命令的基本格式是: ...

    MySQL-cheatsheet:MySQL备忘单

    MySQL备忘单 我什至上传了.sql文件,您可以下载该文件并直接在sql提示符下运行它们。 通用命令 运行SQL文件 source < filename> .sql; 数据定义语言(DDL) 建立资料库 create database cheatsheet ; 使用数据库 ...

    基于 Django + Mysql 实现的简单备忘录.zip

    8. **MySQL数据库操作**:了解SQL语句,以及如何在Python代码中执行SQL操作。 这个项目对于初学者来说,是学习Django和数据库集成的好实践,同时也可以作为计算机专业学生完成毕业设计或课程设计的参考案例。通过这...

    MVC.rar_MVC 数据库_java MVC 简单_java MVC mysql_mvc 数据库_备忘录

    这个"MVC.rar"压缩包中包含的"MVC备忘录"项目,是一个使用Java MVC框架和MySQL数据库实现的简单备忘录应用。通过解压并分析源代码,我们可以深入理解MVC模式在实际开发中的应用,以及如何利用Java和MySQL来构建Web...

    精选_基于Jsp和MySQL实现的个人记事备忘系统_源码打包

    【标题】"精选_基于Jsp和MySQL实现的个人记事备忘系统_源码打包"揭示了这个项目的核心——一个使用JSP(JavaServer Pages)技术和MySQL数据库构建的个人记事本或备忘录应用。这样的系统允许用户在线创建、编辑、存储...

    SQL注入攻击与防御

    SQL注入是Internet上最危险、最有名的安全漏洞之一,本书是目前唯一一本专门致力于讲解SQL威胁的图书。...10.3.2 Microsoft SQL Server备忘单 333 10.3.3 MySQL备忘单 338 10.3.4 Oracle备忘单 341 ……

    毕业设计基于JavaWeb实现的一个备忘录系统项目源码.zip

    毕业设计基于JavaWeb实现的一个备忘录系统项目源码。难度适中,新手自己可操作 备忘录 介绍 后端部分基于Servlet、Jdbc实现.... 一个简单的前后端分离Demo,...mysql文件系夹中为sql文件,用数据库可视化工具导入即可。

    SQL注入攻击与防御(安全技术经典译丛)

    作 者:(美)克拉克 著,黄晓磊,李化 译 SQL注入是Internet上最危险、最有名的安全漏洞之一,本书是目前唯一一本专门致力于... 10.3.2 Microsoft SQL Server备忘单  10.3.3 MySQL备忘单  10.3.4 Oracle备忘单

    C#备忘录数据库代码

    - C#中常用的数据库有关系型数据库如SQL Server、MySQL、SQLite和Oracle,以及非关系型数据库如MongoDB。对于小型或个人项目,SQLite是一个轻量级且易于集成的选择,因为它不需要单独的服务器进程。 2. ADO.NET: ...

    买卖股票备忘程序

    PowerBuilder作为一款强大的数据库开发工具,支持多种数据库连接,如SQL Server、Oracle、MySQL等。因此,我们可以推测《买卖股票备忘程序》可能是通过ODBC或JDBC等方式连接到某个数据库,实现了数据的高效存储和...

    asp日历&备忘录

    1. 数据库管理:如Microsoft SQL Server或MySQL,用于存储日历事件和备忘录。 2. CSS和JavaScript:用于创建用户界面和增强交互性。 3. AJAX(Asynchronous JavaScript and XML):用于无刷新的数据交换,提高用户...

    java备忘录

    Java备忘录是一款基于Java开发的应用程序,它利用MySQL数据库来存储和管理用户的数据。这个程序的构建展示了Java与数据库集成的基本原理,是学习和理解Java后端开发的一个良好实践案例。 首先,Java作为一门多用途...

    MYSQL笔记 .md

    常见的DBMS包括MySQL、Oracle、DB2、Sybase和SQL Server。 - **结构化查询语言 (SQL)**: SQL是一种标准化的查询语言,广泛应用于数据库管理中。它是一种高级语言,易于理解和编写。SQL语句在执行前会由DBMS进行编译...

    SQL-Injection-Cheat-Sheet-Chinese-Ver.:翻译SQL注入备忘单(http

    SQL-Injection-Cheat-Sheet-...现在仅支持MySQL、Microsoft SQL Server,以及一部分ORACLE和PostgreSQL。大部分样例都不能保证每一个场景都适用。现实场景由于各种插入语、不同的代码环境以及各种不常见甚至奇特SQL语句

    Java 综合案例 可编辑备忘录的日历程序 学生系统

    如果规模较大,可能还会涉及到数据库连接和SQL查询,例如使用JDBC(Java Database Connectivity)来与MySQL、Oracle等数据库进行交互。 在提供的压缩包中,`chap9`可能包含了关于日期和时间处理,以及备忘录日历...

Global site tag (gtag.js) - Google Analytics