关于多级别菜单栏或者权限系统中部门上下级的树形遍历,oracle中有connect by来实现,mysql没有这样的便捷途径,所以MySQL遍历数据表是我们经常会遇到的头痛问题,下面通过数据库函数来实现 1、建表 ① 机构表 CREATE TABLE `t_sys_org` ( `ID` varchar(64)
关于多级别菜单栏或者权限系统中部门上下级的树形遍历,oracle中有connect by来实现, mysql没有这样的便捷途径,所以MySQL遍历数据表是我们经常会遇到的头痛问题,下面通过数据库函数来实现
1、建表
① 机构表
CREATE TABLE `t_sys_org` (
`ID` varchar(64) NOT NULL COMMENT '主键ID',
`CODE` varchar(60) DEFAULT NULL COMMENT '编码',
`NAME` varchar(200) DEFAULT NULL COMMENT '机构名称',
`FULLNAME` varchar(100) DEFAULT NULL,
`SHORTNAME` varchar(60) DEFAULT NULL COMMENT '机构简称',
`ORGCODE` varchar(60) DEFAULT NULL COMMENT '机构代码',
`PARENTID` varchar(64) DEFAULT NULL COMMENT '上级机构',
`DEPTH` int(10) DEFAULT NULL COMMENT '深度',
`SORT` varchar(24) DEFAULT NULL COMMENT '排序',
`REMARK` varchar(200) DEFAULT NULL COMMENT '备注',
`STATUS` varchar(4) DEFAULT NULL COMMENT '状态',
`ORGTYPE` varchar(2) DEFAULT NULL COMMENT '机构类型',
`CODENUM` varchar(80) DEFAULT NULL COMMENT '单位代码证编号',
`LEAGALPERSON` varchar(18) DEFAULT NULL COMMENT '机构法人',
`LEAGALPERSONID` int(10) DEFAULT NULL COMMENT '负责人ID',
`SPLITLEADER` varchar(80) DEFAULT NULL COMMENT '分管领导',
`SPLITLEADERID` int(10) DEFAULT NULL COMMENT '分管领导ID',
`ADMINLEVEL` varchar(16) DEFAULT NULL COMMENT '机构行政级别',
`NATURE` varchar(16) DEFAULT NULL COMMENT '机构性质',
`WORKNATUREB` varchar(100) DEFAULT NULL COMMENT '机构工作性质(大类)',
`WORKNATUREM` varchar(16) DEFAULT NULL COMMENT '机构工作性质(中类)',
`WORKNATURES` varchar(100) DEFAULT NULL COMMENT '机构工作性质(小类)',
`ARECODE` varchar(16) DEFAULT NULL COMMENT '单位所隶属行政区划',
`ADDRESS` varchar(800) DEFAULT NULL COMMENT '单位驻地与地址',
`MAILCODE` varchar(16) DEFAULT NULL COMMENT '单位邮编',
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='机构表(T_SYS_ORG)';
②用户表
CREATE TABLE `t_sys_user` (
`ID` varchar(64) NOT NULL COMMENT '主键ID',
`ACCOUNT` varchar(200) DEFAULT NULL COMMENT '账号',
`USERNAME` varchar(60) DEFAULT NULL COMMENT '姓名',
`PASSWORD` varchar(120) DEFAULT NULL COMMENT '密码',
`IDCARD` varchar(72) DEFAULT NULL COMMENT '身份证号',
`SEX` varchar(4) DEFAULT NULL COMMENT '性别',
`CREATETIME` datetime DEFAULT NULL COMMENT '创建时间',
`MODTIME` datetime DEFAULT NULL COMMENT '修改时间',
`MODPWDTIME` datetime DEFAULT NULL COMMENT '修改密码时间',
`REMARK` varchar(500) DEFAULT NULL COMMENT '备注',
`STATUS` int(10) DEFAULT NULL COMMENT '状态',
`ADMINLEVLE` varchar(16) DEFAULT NULL COMMENT '行政级别',
`ALARMBELL` varchar(16) DEFAULT NULL COMMENT '警衔',
`ARCHIVEDEPTID` decimal(10,0) DEFAULT NULL COMMENT '档案部门ID',
`AUTHORIZED` varchar(16) DEFAULT NULL COMMENT '编制',
`BIRTHDAY` datetime DEFAULT NULL COMMENT '出生日期',
`BIRTHPLACE` varchar(128) DEFAULT NULL COMMENT '籍贯',
`CREATEBY` decimal(10,0) DEFAULT NULL COMMENT '创建人',
`EDUCATIONALBG` varchar(16) DEFAULT NULL COMMENT '最高学历',
`MODIFYBY` decimal(10,0) DEFAULT NULL COMMENT '修改人',
`NATION` varchar(16) DEFAULT NULL COMMENT '民族',
`POLICENUMBER` varchar(64) DEFAULT NULL COMMENT '警号',
`POLITICAL` varchar(16) DEFAULT NULL COMMENT '政治面貌',
`POSITION` varchar(16) DEFAULT NULL COMMENT '职务',
`POSITIONLEVLE` varchar(16) DEFAULT NULL COMMENT '职级',
`SORTNO` varchar(200) DEFAULT NULL COMMENT '排序级别',
`WORKDEPTID` varchar(64) DEFAULT NULL COMMENT '工作部门ID',
`ORGID` varchar(64) DEFAULT NULL COMMENT '所属机构',
`USERSTATUS` decimal(10,0) DEFAULT NULL COMMENT '用户状态',
`COCALLSTATUS` decimal(10,0) DEFAULT NULL COMMENT '即时通同步状态',
`COMPOSITIONDEPTID` decimal(10,0) DEFAULT NULL COMMENT '编制部门',
`RECORDSMAGORG` varchar(100) DEFAULT NULL COMMENT '档案管理单位',
`NICKNAME` varchar(64) DEFAULT NULL COMMENT '昵称',
`WORKNUMBER` varchar(100) DEFAULT NULL COMMENT '工作证号',
`USERKEY` text COMMENT '用户键值',
`PARTJOBNO` varchar(4) DEFAULT NULL,
`IMG_PATH` varchar(200) DEFAULT NULL COMMENT '照片路径',
PRIMARY KEY (`ID`),
UNIQUE KEY `ACCOUNT_UNIQUE` (`ACCOUNT`) USING BTREE,
KEY `IND_SUSR_ORGID` (`ORGID`) USING BTREE,
KEY `IND_SUSR_STAT` (`STATUS`) USING BTREE,
KEY `IND_SUSR_STNO` (`SORTNO`) USING BTREE,
KEY `IND_SUSR_USTAT` (`USERSTATUS`) USING BTREE,
KEY `IND_SUSR_WDPID` (`WORKDEPTID`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='用户表';
3、使用FUNCTION根据指定的ID流水号获取多级部门编号(包括当前ID)
BEGIN
DECLARE sTemp VARCHAR(4000);
DECLARE sTempChd VARCHAR(4000);
SET sTemp = '$';
SET sTempChd = cast(orgId as char);
WHILE sTempChd is not NULL DO
SET sTemp = CONCAT(sTemp,',',sTempChd);
SELECT group_concat(id) INTO sTempChd FROM t_sys_org where FIND_IN_SET(parentId,sTempChd)>0;
END WHILE;
return sTemp;
END
4、根据部门ID获取该部门下的所有子部门
select id from t_sys_org where FIND_IN_SET ( id, queryAllChildByOrg('448457')) order by code;
5、根据获取的子部门获取其所有的用户信息
select username, WORKDEPTID from t_sys_user where WORKDEPTID in select id from t_sys_org where FIND_IN_SET ( id, queryAllChildByOrg('448457')) order by code)

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于架构原理的相关内容,MySQL Server架构自顶向下大致可以分网络连接层、服务层、存储引擎层和系统文件层,下面一起来看一下,希望对大家有帮助。

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

方法:1、利用right函数,语法为“update 表名 set 指定字段 = right(指定字段, length(指定字段)-1)...”;2、利用substring函数,语法为“select substring(指定字段,2)..”。

mysql的msi与zip版本的区别:1、zip包含的安装程序是一种主动安装,而msi包含的是被installer所用的安装文件以提交请求的方式安装;2、zip是一种数据压缩和文档存储的文件格式,msi是微软格式的安装包。

转换方法:1、利用cast函数,语法“select * from 表名 order by cast(字段名 as SIGNED)”;2、利用“select * from 表名 order by CONVERT(字段名,SIGNED)”语句。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了mysql高级篇的一些问题,包括了索引是什么、索引底层实现等等问题,下面一起来看一下,希望对大家有帮助。

在mysql中,可以利用REGEXP运算符判断数据是否是数字类型,语法为“String REGEXP '[^0-9.]'”;该运算符是正则表达式的缩写,若数据字符中含有数字时,返回的结果是true,反之返回的结果是false。


핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

mPDF
mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

안전한 시험 브라우저
안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

MinGW - Windows용 미니멀리스트 GNU
이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 Linux 새 버전
SublimeText3 Linux 최신 버전
