SQL-三级分类查询
/*
SQLyog 企业版 - MySQL GUI v8.14
MySQL - 5.5.40 : Database - appinfodb
*********************************************************************
*/
/*!40101 SET NAMES utf8 */;
/*!40101 SET SQL_MODE=''*/;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
CREATE DATABASE /*!32312 IF NOT EXISTS*/`appinfodb` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;
USE `appinfodb`;
/*Table structure for table `ad_promotion` */
DROP TABLE IF EXISTS `ad_promotion`;
CREATE TABLE `ad_promotion` (
`id` BIGINT(30) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`appId` BIGINT(30) DEFAULT NULL COMMENT 'appId(来源于:app_info表的主键id)',
`adPicPath` VARCHAR(100) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '广告图片存储路径',
`adPV` BIGINT(50) DEFAULT NULL COMMENT '广告点击量',
`carouselPosition` INT(30) DEFAULT NULL COMMENT '轮播位(1-n)',
`startTime` DATETIME DEFAULT NULL COMMENT '起效时间',
`endTime` DATETIME DEFAULT NULL COMMENT '失效时间',
`createdBy` BIGINT(30) DEFAULT NULL COMMENT '创建者(来源于backend_user用户表的用户id)',
`creationDate` DATETIME DEFAULT NULL COMMENT '创建时间',
`modifyBy` BIGINT(30) DEFAULT NULL COMMENT '更新者(来源于backend_user用户表的用户id)',
`modifyDate` DATETIME DEFAULT NULL COMMENT '最新更新时间',
PRIMARY KEY (`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*Data for the table `ad_promotion` */
/*Table structure for table `app_category` */
DROP TABLE IF EXISTS `app_category`;
CREATE TABLE `app_category` (
`id` BIGINT(30) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`categoryCode` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '分类编码',
`categoryName` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '分类名称',
`parentId` BIGINT(30) DEFAULT NULL COMMENT '父级节点id',
`createdBy` BIGINT(30) DEFAULT NULL COMMENT '创建者(来源于backend_user用户表的用户id)',
`creationTime` DATETIME DEFAULT NULL COMMENT '创建时间',
`modifyBy` BIGINT(30) DEFAULT NULL COMMENT '更新者(来源于backend_user用户表的用户id)',
`modifyDate` DATETIME DEFAULT NULL COMMENT '最新更新时间',
PRIMARY KEY (`id`)
) ENGINE=MYISAM AUTO_INCREMENT=107 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*Data for the table `app_category` */
INSERT
INTO
`app_category`(`id`,`categoryCode`,`categoryName`,`parentId`,`createdBy`,`creationTime`,`modifyBy`,`modifyDate`)
VALUES (1,'ALL_APP','全部应用',NULL,1,'2016-08-12
18:11:47',NULL,NULL),(2,'ALL_GAME','全部游戏',NULL,1,'2016-08-12
18:11:47',NULL,NULL),(3,'APP_001','系统工具',1,1,'2016-08-12
18:11:47',NULL,NULL),(4,'APP_002','桌面插件',1,1,'2016-08-12
18:11:47',NULL,NULL),(5,'APP_003','主题美化',1,1,'2016-08-12
18:11:47',NULL,NULL),(6,'APP_004','社交聊天',1,1,'2016-08-12
18:11:47',NULL,NULL),(7,'APP_005','资讯阅读',1,1,'2016-08-12
18:11:47',NULL,NULL),(8,'APP_006','通讯网络',1,1,'2016-08-12
18:11:47',NULL,NULL),(9,'APP_007','影音娱乐',1,1,'2016-08-12
18:11:47',NULL,NULL),(10,'APP_008','摄影图片 ',1,1,'2016-08-12
18:11:47',NULL,NULL),(11,'APP_009','生活服务',1,1,'2016-08-12
18:11:47',NULL,NULL),(12,'APP_010','实用工具 ',1,1,'2016-08-12
18:11:47',NULL,NULL),(13,'APP_011','文档商务',1,1,'2016-08-12
18:11:47',NULL,NULL),(14,'APP_012','金融财经',1,1,'2016-08-12
18:11:47',NULL,NULL),(15,'APP_013','运动健康',1,1,'2016-08-12
18:11:47',NULL,NULL),(16,'APP_014','学习教育 ',1,1,'2016-08-12
18:11:47',NULL,NULL),(17,'APP_015','旅行交通',1,1,'2016-08-12
18:11:47',NULL,NULL),(18,'APP_016','购物',1,1,'2016-08-12
18:11:47',NULL,NULL),(19,'GAME_001','休闲游戏',2,1,'2016-08-12
18:11:47',NULL,NULL),(20,'GAME_002','益智游戏',2,1,'2016-08-12
18:11:47',NULL,NULL),(21,'GAME_003','棋牌游戏',2,1,'2016-08-12
18:11:47',NULL,NULL),(22,'GAME_004','体育赛车',2,1,'2016-08-12
18:11:47',NULL,NULL),(23,'GAME_005','动作射击',2,1,'2016-08-12
18:11:47',NULL,NULL),(24,'GAME_006','掌上网游',2,1,'2016-08-12
18:11:47',NULL,NULL),(25,'GAME_007','策略塔防',2,1,'2016-08-12
18:11:47',NULL,NULL),(26,'GAME_008','角色扮演',2,1,'2016-08-12
18:11:47',NULL,NULL),(27,'GAME_009','模拟经营 ',2,1,'2016-08-12
18:11:47',NULL,NULL),(28,'GAME_010','音乐游戏 ',2,1,'2016-08-12
18:11:47',NULL,NULL),(29,'APP_001_01','输入法',3,1,'2016-08-12
18:11:47',NULL,NULL),(30,'APP_001_02','文件管理',3,1,'2016-08-12
18:11:47',NULL,NULL),(31,'APP_001_03','清理优化',3,1,'2016-08-12
18:11:47',NULL,NULL),(32,'APP_001_04','安全防护',3,1,'2016-08-12
18:11:47',NULL,NULL),(33,'APP_001_05','备份还原',3,1,'2016-08-12
18:11:47',NULL,NULL),(34,'APP_001_06','辅助加强',3,1,'2016-08-12
18:11:47',NULL,NULL),(35,'APP_002_01','桌面',4,1,'2016-08-12
18:11:47',NULL,NULL),(36,'APP_002_02','插件',4,1,'2016-08-12
18:11:47',NULL,NULL),(37,'APP_002_03','锁屏',4,1,'2016-08-12
18:11:47',NULL,NULL),(38,'GAME_001_01','跳舞',19,1,'2016-08-12
18:11:47',NULL,NULL),(39,'GAME_001_02','涂鸦',19,1,'2016-08-12
18:11:47',NULL,NULL),(40,'GAME_001_03','虐心',19,1,'2016-08-12
18:11:47',NULL,NULL),(41,'GAME_001_04','冒险',19,1,'2016-08-12
18:11:47',NULL,NULL),(42,'GAME_002_01','消除',20,1,'2016-08-12
18:11:47',NULL,NULL),(43,'GAME_001_02','解谜',20,1,'2016-08-12
18:11:47',NULL,NULL),(44,'GAME_001_03','物理',20,1,'2016-08-12
18:11:47',NULL,NULL),(45,'GAME_003_01','麻将',21,1,'2016-08-12
18:11:47',NULL,NULL),(46,'GAME_003_02','扑克',21,1,'2016-08-12
18:11:47',NULL,NULL),(47,'GAME_004_01','赛车',22,1,'2016-08-12
18:11:47',NULL,NULL),(48,'GAME_004_02','足球',22,1,'2016-08-12
18:11:47',NULL,NULL),(49,'GAME_004_03','篮球',22,1,'2016-08-12
18:11:47',NULL,NULL),(50,'GAME_004_04','摩托',22,1,'2016-08-12
18:11:47',NULL,NULL);
/*Table structure for table `app_info` */
DROP TABLE IF EXISTS `app_info`;
CREATE TABLE `app_info` (
`id` BIGINT(30) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`softwareName` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '软件名称',
`APKName` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'APK名称(唯一)',
`supportROM` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '支持ROM',
`interfaceLanguage` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '界面语言',
`softwareSize` DECIMAL(20,2) DEFAULT NULL COMMENT '软件大小(单位:M)',
`updateDate` DATE DEFAULT NULL COMMENT '更新日期',
`devId` BIGINT(30) DEFAULT NULL COMMENT '开发者id(来源于:dev_user表的开发者id)',
`appInfo` VARCHAR(5000) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '应用简介',
`status` BIGINT(30) DEFAULT NULL COMMENT '状态(来源于:data_dictionary,1 待审核 2 审核通过 3 审核不通过 4 已上架 5 已下架)',
`onSaleDate` DATETIME DEFAULT NULL COMMENT '上架时间',
`offSaleDate` DATETIME DEFAULT NULL COMMENT '下架时间',
`flatformId` BIGINT(30) DEFAULT NULL COMMENT '所属平台(来源于:data_dictionary,1 手机 2 平板 3 通用)',
`categoryLevel3` BIGINT(30) DEFAULT NULL COMMENT '所属三级分类(来源于:data_dictionary)',
`downloads` BIGINT(30) DEFAULT NULL COMMENT '下载量(单位:次)',
`createdBy` BIGINT(30) DEFAULT NULL COMMENT '创建者(来源于dev_user开发者信息表的用户id)',
`creationDate` DATETIME DEFAULT NULL COMMENT '创建时间',
`modifyBy` BIGINT(30) DEFAULT NULL COMMENT '更新者(来源于dev_user开发者信息表的用户id)',
`modifyDate` DATETIME DEFAULT NULL COMMENT '最新更新时间',
`categoryLevel1` BIGINT(30) DEFAULT NULL COMMENT '所属一级分类(来源于:data_dictionary)',
`categoryLevel2` BIGINT(30) DEFAULT NULL COMMENT '所属二级分类(来源于:data_dictionary)',
`logoPicPath` VARCHAR(500) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'LOGO图片url路径',
`logoLocPath` VARCHAR(500) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'LOGO图片的服务器存储路径',
`versionId` BIGINT(30) DEFAULT NULL COMMENT '最新的版本id',
PRIMARY KEY (`id`)
) ENGINE=INNODB AUTO_INCREMENT=59 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*Data for the table `app_info` */
INSERT
INTO
`app_info`(`id`,`softwareName`,`APKName`,`supportROM`,`interfaceLanguage`,`softwareSize`,`updateDate`,`devId`,`appInfo`,`status`,`onSaleDate`,`offSaleDate`,`flatformId`,`categoryLevel3`,`downloads`,`createdBy`,`creationDate`,`modifyBy`,`modifyDate`,`categoryLevel1`,`categoryLevel2`,`logoPicPath`,`logoLocPath`,`versionId`)
VALUES (48,'劲乐团U:O2Jam
U','com.momocorp.o2jamu','2.3及更高版本','英文软件','56.00',NULL,1,'劲乐团U O2Jam
U是一款音乐节拍游戏,跟着音乐的节奏点击屏幕即可,就是跳舞机,需要网络支持。\r\n注意:部分机型会卡死在启动界面或fc,结束进程后重新开启游戏就正常了。',1,NULL,NULL,3,38,1000,1,'2016-08-22
11:43:02',NULL,NULL,2,19,'/AppInfoSystem/statics/uploadfiles/com.momocorp.o2jamu.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.momocorp.o2jamu.jpg',NULL),(49,'LBE安全大师','com.lbe.security','2.2及更高版本','简体中文','9.00',NULL,1,'欢迎您使用LBE安全大师,Android平台上首款主动式防御软件,第一款具备实时监控与拦截能力的安全软件。\r\n安全大师基于业界首创的API拦截技术,能够实时监控与拦截系统中的敏感操作,动态拦截来自已知和未知的各种威胁。避免各类吸费软件,广告软件乃至木马病毒窃取您手机内的隐私信息以及可能产生的经济损失。\r\n安全大师同时提供了强大的定制功能与完善的提示机制,您更可以精确控制系统中每一个应用的权限,同时不放过任何一次可疑的操作。对于没有获取root权限的用户,您依旧可以使用我们的流量控制,电话短信防火墙,系统优化清理等功能。',1,NULL,NULL,1,32,2000,1,'2016-08-22
11:47:11',NULL,NULL,1,3,'/AppInfoSystem/statics/uploadfiles/com.lbe.security.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.lbe.security.jpg',NULL),(50,'应用锁:Smart
App
Protector','com.sp.protector.free','2.3及更高版本','简体中文','3.00',NULL,1,'Smart
App
Protector是一款应用锁定程序,可以实现当您打开某个应用时进行密码保护,从而保护用户的隐私问题。',1,NULL,NULL,1,32,5000,1,'2016-08-22
11:49:12',NULL,NULL,1,3,'/AppInfoSystem/statics/uploadfiles/com.sp.protector.free.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.sp.protector.free.jpg',NULL),(51,'谷歌拼音输入法','com.google.android.inputmethod.pinyin','4.2及更高版本','简体中文','16.00',NULL,1,'谷歌拼音输入法是一款专门用于输入中文的输入法,提供了多种方便的输入方式:\r\n-
全键盘拼音支持中文滑行输入和智能纠错\r\n- 9键键盘拼音支持中文滑行输入\r\n- 笔画键盘\r\n- 全屏和半屏手写键盘\r\n-
英文键盘\r\n- 模糊拼音\r\n- 双拼\r\n- 针对各种不同屏幕尺寸优化的UI布局\r\n-
语音输入\r\n不仅支持输入简体中文、繁体中文,还支持标点符号、表情符号、拉丁字符和数字。语音输入法使用基于互联网的语音识别服务,以提供高精度的输入匹配。\r\n\r\n注意:要在你的Android设备上使用该输入法,请在
“设置”→“语言和输入法”中开启。\r\n\r\n如需输入粤语,请下载谷歌粤语输入法\r\nhttps://play.google.com/store/apps/details?id=com.google.android.apps.inputmethod.cantonese\r\n\r\n如需使用注音或者倉頡输入繁体中文,请下载谷歌注音输入法\r\nhttps://play.google.com/store/apps/details?id=com.google.android.apps.inputmethod.zhuyin',1,NULL,NULL,3,29,8000,1,'2016-08-22
11:53:23',NULL,NULL,1,3,'/AppInfoSystem/statics/uploadfiles/com.google.android.inputmethod.pinyin.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.google.android.inputmethod.pinyin.jpg',37),(52,'RE管理器:Root
Explorer','com.speedsoftware.rootexplorer','2.3及更高版本','简体中文','3.00',NULL,1,'RootExplorer
需要 ROOT 权限,新建文件夹,查看 / 编辑文件,软件安装,RootExplorer
具备普通文件管理器的各项基本功能,另外还添加了搜索功能,在手机上找东西变得更加方便。此外,RootExplorer
最大的特点在于它能够删除手机中自带的应用程序,如 GOOGLEMAP,CONTACTS,MARKET,GTALK
等等。',1,NULL,NULL,1,30,2340,1,'2016-08-22
11:55:14',NULL,NULL,1,3,'/AppInfoSystem/statics/uploadfiles/com.speedsoftware.rootexplorer.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.speedsoftware.rootexplorer.jpg',38),(53,'关屏锁定:Screen
Off and
Lock','com.katecca.screenofflockdonate','2.2及更高版本','简体中文','1.00',NULL,1,'关屏锁定Screen
Off and Lock能实现只需点击一下即可关闭屏幕及锁定手机,支持设定关屏动画及音效
,不是widget,可以放在任何地方,同时支持通知栏激活或者长按搜索键激活。',1,NULL,NULL,1,37,20,1,'2016-08-22
13:07:11',NULL,NULL,1,4,'/AppInfoSystem/statics/uploadfiles/com.katecca.screenofflockdonate.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.katecca.screenofflockdonate.jpg',NULL),(54,'重力锁屏:Gravity
Screen Off
Pro','com.plexnor.gravityscreenoffpro','2.2及更高版本','英文软件','1.00',NULL,1,'重力锁屏Gravity
Screen Off
Pro可以让手机在特定的条件下自动开启/关闭屏幕(例如放入口袋、放在桌面上、在传感器前挥手、移动手机等),而且识别度相当准确,你可以在设置中随意设置任意角度,当你把手机按这个角度(或者比这个角度小)放入口袋、桌面上时,屏幕就会自动关闭。日常使用起来节省了不少手动开屏/关屏的时间,这个才是真正的与科技接轨!\r\n功能说明:\r\n*
支持识别手机是否在口袋中,可以自定义在口袋中识别设备放置的角度、方向;\r\n*
支持识别手机是否在桌面上,可以自定义在桌面上识别设备放置的角度;\r\n* 识别设备正面、反面放置;\r\n*
可以是使用距离传感器、重力传感器进行识别;\r\n* 可以通过识别动作(例如挥手、移动手机等)来开启/关闭屏幕);\r\n*
可以自定识别灵敏度;\r\n* 支持在插入而且后启用传感器来自动开启/关闭屏幕;\r\n* 支持开机自动启用服务;\r\n*
可以在通知栏显示启用/停用服务的快捷方式。',1,NULL,NULL,1,37,23,1,'2016-08-22
13:08:24',NULL,NULL,1,4,'/AppInfoSystem/statics/uploadfiles/com.plexnor.gravityscreenoffpro.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.plexnor.gravityscreenoffpro.jpg',NULL),(55,'机械迷城:Machinarium','air.net.machinarium.Machinarium.GP','2.3及更高版本','英文软件','11.00',NULL,1,'机械迷城Machinarium是一款解密冒险游戏,玩家可以在城市里随意的走动,跟场景或是其他同样是机器人互动,了解他们的需求以及帮忙他们,一步一步往事件的核心探索。
',3,NULL,NULL,1,43,277,1,'2016-08-22
13:09:44',NULL,NULL,2,20,'/AppInfoSystem/statics/uploadfiles/air.net.machinarium.Machinarium.GP.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\air.net.machinarium.Machinarium.GP.jpg',36),(56,'Dont
Starve饥荒','com.kleientertainment.doNotStarvePocket','4.0.3及更高版本','英文软件','4.00',NULL,1,'Don`t
Starve: Pocket
Edition移动版将深受超过4百万玩家喜爱的热门PC游戏移植到了安卓平台。现在你可以随时随地进入充满科学和魔法元素的世界,体验原汁原味的荒野生存游戏!\r\n你扮演威尔逊,一位被困住并传送到神秘荒野世界的勇敢无畏的绅士科学家。如果威尔逊希望逃出生天并找到回家的路,他必须充分利用所处的环境及这里的各种生物。\r\n进入一个光怪陆离而未经探索的世界,这里充满了奇怪的生物以及形形色色的危险和意外。收集资源以制作符合你的生存风格的物品和建筑。一路解开这块奇怪大陆上的各种谜团。',5,NULL,'2016-08-22
13:28:16',2,41,390,1,'2016-08-22
13:11:51',1,NULL,2,19,'/AppInfoSystem/statics/uploadfiles/com.kleientertainment.doNotStarvePocket.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.kleientertainment.doNotStarvePocket.jpg',42),(57,'机械世界:Apparatus','com.bithack.apparatus','1.6及更高版本','英文软件','11.00',NULL,1,'在机械世界Apparatus游戏中你需要利用木板、钉子、绳索、圆轮等等各种道具搭建从简单到复杂的机械结构,使得小球可以最终滚落到蓝色方框中。可以利用的可不止重力,包括杠杆原理、滑轮等等,尤其是后面的关卡,你需要足够灵活的头脑才能解决问题,可玩性还是非常高的。',3,NULL,NULL,1,44,255,1,'2016-08-22
13:13:27',NULL,NULL,2,20,'/AppInfoSystem/statics/uploadfiles/com.bithack.apparatus.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.bithack.apparatus.jpg',41),(58,'沙盘玩具:The
Powder
Toy','com.doodleapps.powdertoy','2.2及更高版本','英文软件','1.00',NULL,1,'沙盘玩具The
Powder
Toy是一款模拟类游戏。想过自己建造核电站吗?或者自己做一个CPU?你甚至可以创建一个虚拟网络。沙盘玩具可以模拟空气的压力,速度,热,重力和无数的不同物质之间的相互作用,游戏提供各种形态的建材,用以构建复杂的机器或是电子元件,你可以模拟超酷的爆炸或是布线出复杂的机器人。欢迎提交您的作品。',4,NULL,'2016-08-22
13:27:42',3,44,2000,1,'2016-08-22
13:14:56',1,NULL,2,20,'/AppInfoSystem/statics/uploadfiles/com.doodleapps.powdertoy.jpg','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.doodleapps.powdertoy.jpg',40);
/*Table structure for table `app_version` */
DROP TABLE IF EXISTS `app_version`;
CREATE TABLE `app_version` (
`id` BIGINT(30) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`appId` BIGINT(30) DEFAULT NULL COMMENT 'appId(来源于:app_info表的主键id)',
`versionNo` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '版本号',
`versionInfo` VARCHAR(2000) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '版本介绍',
`publishStatus` BIGINT(30) DEFAULT NULL COMMENT '发布状态(来源于:data_dictionary,1 不发布 2 已发布 3 预发布)',
`downloadLink` VARCHAR(500) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '下载链接',
`versionSize` DECIMAL(20,2) DEFAULT NULL COMMENT '版本大小(单位:M)',
`createdBy` BIGINT(30) DEFAULT NULL COMMENT '创建者(来源于dev_user开发者信息表的用户id)',
`creationDate` DATETIME DEFAULT NULL COMMENT '创建时间',
`modifyBy` BIGINT(30) DEFAULT NULL COMMENT '更新者(来源于dev_user开发者信息表的用户id)',
`modifyDate` DATETIME DEFAULT NULL COMMENT '最新更新时间',
`apkLocPath` VARCHAR(500) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT 'apk文件的服务器存储路径',
`apkFileName` VARCHAR(500) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '上传的apk文件名称',
PRIMARY KEY (`id`)
) ENGINE=INNODB AUTO_INCREMENT=43 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*Data for the table `app_version` */
INSERT
INTO
`app_version`(`id`,`appId`,`versionNo`,`versionInfo`,`publishStatus`,`downloadLink`,`versionSize`,`createdBy`,`creationDate`,`modifyBy`,`modifyDate`,`apkLocPath`,`apkFileName`)
VALUES
(33,58,'V1.1.1','V1.1.1版本简介',3,'/AppInfoSystem/statics/uploadfiles/com.doodleapps.powdertoy-V1.1.31.apk','1.00',1,'2016-08-22
13:17:47',NULL,NULL,'D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.doodleapps.powdertoy-V1.1.31.apk','com.doodleapps.powdertoy-V1.1.31.apk'),(34,57,'V1.1.1','
V1.1.1版本简介',3,'/AppInfoSystem/statics/uploadfiles/com.bithack.apparatus-V1.1.1.apk','11.00',1,'2016-08-22
13:19:42',1,'2016-08-22
13:19:54','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.bithack.apparatus-V1.1.1.apk','com.bithack.apparatus-V1.1.1.apk'),(35,56,'V1.1.1','
V1.1.1简介',2,'/AppInfoSystem/statics/uploadfiles/com.kleientertainment.doNotStarvePocket-V1.1.1.apk','4.00',1,'2016-08-22
13:21:12',1,'2016-08-22
13:28:07','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.kleientertainment.doNotStarvePocket-V1.1.1.apk','com.kleientertainment.doNotStarvePocket-V1.1.1.apk'),(36,55,'V1.1.1','
V1.1.1简介',3,'/AppInfoSystem/statics/uploadfiles/air.net.machinarium.Machinarium.GP-V1.1.1.apk','11.00',1,'2016-08-22
13:21:40',1,'2016-08-22
13:21:57','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\air.net.machinarium.Machinarium.GP-V1.1.1.apk','air.net.machinarium.Machinarium.GP-V1.1.1.apk'),(37,51,'V1.1.1','V1.1.1简介',3,'/AppInfoSystem/statics/uploadfiles/com.google.android.inputmethod.pinyin-V1.1.1.apk','16.00',1,'2016-08-22
13:24:07',NULL,NULL,'D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.google.android.inputmethod.pinyin-V1.1.1.apk','com.google.android.inputmethod.pinyin-V1.1.1.apk'),(38,52,'V1.1.1','V1.1.1简介',3,'/AppInfoSystem/statics/uploadfiles/com.speedsoftware.rootexplorer-V1.1.1.apk','3.00',1,'2016-08-22
13:24:35',NULL,NULL,'D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.speedsoftware.rootexplorer-V1.1.1.apk','com.speedsoftware.rootexplorer-V1.1.1.apk'),(39,58,'V1.1.2','V1.1.2',3,'/AppInfoSystem/statics/uploadfiles/com.doodleapps.powdertoy-V1.1.2.apk','2.00',1,'2016-08-22
13:26:15',NULL,NULL,'D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.doodleapps.powdertoy-V1.1.2.apk','com.doodleapps.powdertoy-V1.1.2.apk'),(40,58,'V1.1.3','V1.1.3简介',2,'/AppInfoSystem/statics/uploadfiles/com.doodleapps.powdertoy-V1.1.3.apk','2.00',1,'2016-08-22
13:26:47',1,'2016-08-22
13:27:42','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.doodleapps.powdertoy-V1.1.3.apk','com.doodleapps.powdertoy-V1.1.3.apk'),(41,57,'V1.1.2','
V1.1.2简介',3,'/AppInfoSystem/statics/uploadfiles/com.bithack.apparatus-V1.1.2.apk','11.00',1,'2016-08-22
13:27:32',1,'2016-08-22
15:08:04','D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.bithack.apparatus-V1.1.2.apk','com.bithack.apparatus-V1.1.2.apk'),(42,56,'V1.1.2','V1.1.2简介',3,'/AppInfoSystem/statics/uploadfiles/com.kleientertainment.doNotStarvePocket-V1.1.2.apk','4.00',1,'2016-08-22
15:00:32',NULL,NULL,'D:\\soft\\apache-tomcat-7.0.41\\webapps\\AppInfoSystem\\statics\\uploadfiles\\com.kleientertainment.doNotStarvePocket-V1.1.2.apk','com.kleientertainment.doNotStarvePocket-V1.1.2.apk');
/*Table structure for table `backend_user` */
DROP TABLE IF EXISTS `backend_user`;
CREATE TABLE `backend_user` (
`id` BIGINT(30) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`userCode` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户编码',
`userName` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户名称',
`userType` BIGINT(30) DEFAULT NULL COMMENT '用户角色类型(来源于数据字典表,分为:超管、财务、市场、运营、销售)',
`createdBy` BIGINT(30) DEFAULT NULL COMMENT '创建者(来源于backend_user用户表的用户id)',
`creationDate` DATETIME DEFAULT NULL COMMENT '创建时间',
`modifyBy` BIGINT(30) DEFAULT NULL COMMENT '更新者(来源于backend_user用户表的用户id)',
`modifyDate` DATETIME DEFAULT NULL COMMENT '最新更新时间',
`userPassword` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '用户密码',
PRIMARY KEY (`id`)
) ENGINE=INNODB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*Data for the table `backend_user` */
INSERT
INTO
`backend_user`(`id`,`userCode`,`userName`,`userType`,`createdBy`,`creationDate`,`modifyBy`,`modifyDate`,`userPassword`)
VALUES (1,'admin','系统管理员',1,1,'2016-08-20
00:13:41',NULL,NULL,'123456');
/*Table structure for table `data_dictionary` */
DROP TABLE IF EXISTS `data_dictionary`;
CREATE TABLE `data_dictionary` (
`id` BIGINT(30) NOT NULL AUTO_INCREMENT COMMENT '主键ID',
`typeCode` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '类型编码',
`typeName` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '类型名称',
`valueId` BIGINT(30) DEFAULT NULL COMMENT '类型值ID',
`valueName` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '类型值Name',
`createdBy` BIGINT(30) DEFAULT NULL COMMENT '创建者(来源于backend_user用户表的用户id)',
`creationDate` DATETIME DEFAULT NULL COMMENT '创建时间',
`modifyBy` BIGINT(30) DEFAULT NULL COMMENT '更新者(来源于backend_user用户表的用户id)',
`modifyDate` DATETIME DEFAULT NULL COMMENT '最新更新时间',
PRIMARY KEY (`id`)
) ENGINE=MYISAM AUTO_INCREMENT=110 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*Data for the table `data_dictionary` */
INSERT
INTO
`data_dictionary`(`id`,`typeCode`,`typeName`,`valueId`,`valueName`,`createdBy`,`creationDate`,`modifyBy`,`modifyDate`)
VALUES (1,'USER_TYPE','用户类型',1,'超级管理员',1,'2016-08-12
18:11:47',NULL,NULL),(2,'USER_TYPE','用户类型',2,'财务',1,'2016-08-12
18:11:47',NULL,NULL),(3,'USER_TYPE','用户类型',3,'市场',1,'2016-08-12
18:11:47',NULL,NULL),(4,'USER_TYPE','用户类型',4,'运营',1,'2016-08-12
18:11:47',NULL,NULL),(5,'USER_TYPE','用户类型',5,'销售',1,'2016-08-12
18:11:47',NULL,NULL),(6,'APP_STATUS','APP状态',1,'待审核',1,'2016-08-12
18:11:47',NULL,NULL),(7,'APP_STATUS','APP状态',2,'审核通过',1,'2016-08-12
18:11:47',NULL,NULL),(8,'APP_STATUS','APP状态',3,'审核未通过',1,'2016-08-12
18:11:47',NULL,NULL),(9,'APP_STATUS','APP状态',4,'已上架',1,'2016-08-12
18:11:47',NULL,NULL),(10,'APP_STATUS','APP状态',5,'已下架',1,'2016-08-12
18:11:47',NULL,NULL),(11,'APP_FLATFORM','所属平台',1,'手机',1,'2016-08-12
18:11:47',NULL,NULL),(12,'APP_FLATFORM','所属平台',2,'平板',1,'2016-08-12
18:11:47',NULL,NULL),(14,'PUBLISH_STATUS','发布状态',1,'不发布',1,'2016-08-12
18:11:47',NULL,NULL),(15,'PUBLISH_STATUS','发布状态',2,'已发布',1,'2016-08-12
18:11:47',NULL,NULL),(16,'PUBLISH_STATUS','发布状态',3,'预发布',1,'2016-08-12
18:11:47',NULL,NULL),(13,'APP_FLATFORM','所属平台',3,'通用',1,'2016-08-12
18:11:47',NULL,NULL);
/*Table structure for table `dev_user` */
DROP TABLE IF EXISTS `dev_user`;
CREATE TABLE `dev_user` (
`id` BIGINT(30) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`devCode` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '开发者帐号',
`devName` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '开发者名称',
`devPassword` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '开发者密码',
`devEmail` VARCHAR(50) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '开发者电子邮箱',
`devInfo` VARCHAR(500) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '开发者简介',
`createdBy` BIGINT(30) DEFAULT NULL COMMENT '创建者(来源于backend_user用户表的用户id)',
`creationDate` DATETIME DEFAULT NULL COMMENT '创建时间',
`modifyBy` BIGINT(30) DEFAULT NULL COMMENT '更新者(来源于backend_user用户表的用户id)',
`modifyDate` DATETIME DEFAULT NULL COMMENT '最新更新时间',
PRIMARY KEY (`id`)
) ENGINE=INNODB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
/*Data for the table `dev_user` */
INSERT
INTO
`dev_user`(`id`,`devCode`,`devName`,`devPassword`,`devEmail`,`devInfo`,`createdBy`,`creationDate`,`modifyBy`,`modifyDate`)
VALUES (1,'test001','测试账户001','123456',NULL,NULL,1,'2016-08-20
00:13:41',NULL,NULL);
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
#Start working-----------------------------------------------------------------
#update dev_user set devCode ='admin' where id =1
SELECT * FROM dev_user WHERE devCode ='admin' AND devPassword='123456'
#查看所有表
SELECT * FROM ad_promotion
SELECT * FROM app_category
SELECT * FROM app_info
SELECT * FROM app_version
SELECT * FROM data_dictionary
SELECT categoryName FROM app_category c INNER JOIN app_i`app_info`nfo i
WHERE c.id=i.categoryLevel1
SELECT categoryName FROM app_category WHERE id IN(SELECT parentId FROM app_category)
#查询所属平台
SELECT valueName FROM data_dictionary WHERE typeName='所属平台' AND valueId IN
(SELECT flatformId FROM app_info)
#原先的三级分类查询
SELECT
i.softwareName,i.APKName,i.softwareSize,d.valueName,c.categoryName,i.downloads
FROM app_info i,data_dictionary d,app_category c
WHERE d.typeName='所属平台' AND d.valueId IN
(SELECT i.flatformId FROM app_info) AND c.id IN(SELECT categoryLevel1 FROM app_info)
#改过后的三级分类查询(看我!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!)
SELECT
i.softwareName,i.APKName,i.softwareSize,(SELECT c.categoryName FROM
app_category c WHERE c.`id`=i.categoryLevel1) AS'一级分类',
(SELECT c.categoryName FROM app_category c WHERE c.`id`=i.categoryLevel2) AS'二级分类',
(SELECT c.categoryName FROM app_category c WHERE c.`id`=i.categoryLevel3) AS'三级分类',
(SELECT d.valueName FROM data_dictionary d WHERE d.`typeName`='App状态' AND d.`valueId`=i.status)AS'状态',
i.downloads,
(SELECT v.`versionNo` FROM app_version v WHERE v.id=i.versionId)AS'最新版本号'
FROM app_info i;
SELECT a.id, a.softwareName,a.APKName,a.supportROM,a.softwareSize,a.devId,
(SELECT devName FROM dev_user WHERE id = a.devId) AS devName,
a.status,
(SELECT valueName FROM data_dictionary d WHERE a.status=d.valueId AND d.typeCode='APP_STATUS') AS statusName,
a.flatformId,
(SELECT valueName FROM data_dictionary d WHERE
a.flatformId=d.valueId AND d.typeCode='APP_FLATFORM') AS flatformName,
a.categoryLevel1,
(SELECT categoryName FROM app_category c WHERE c.id=a.categoryLevel1) AS categoryLevel1Name,
a.categoryLevel2,
(SELECT categoryName FROM app_category c WHERE c.id=a.categoryLevel2) AS categoryLevel2Name,
a.categoryLevel3,
(SELECT categoryName FROM app_category c WHERE c.id=a.categoryLevel3) AS categoryLevel3Name,
a.downloads,
a.onSaleDate,
a.versionId,
(SELECT v.versionNo FROM app_version v WHERE v.id=a.versionId ) AS versionNo
FROM app_info a
SQL-三级分类查询的更多相关文章
- SQL 语句与性能之联合查询和联合分类查询
select * from t1 left join t2 on t2.sysno =t1.ASysNo left join t3 on t3.sysno =t2.ASysNo left join t ...
- 三级级联查询省份名称和编码(保证名称不重复)的SQL语句
三级级联查询省份名称和编码(保证名称不重复)的SQL语句 1.省份.地市和县级数据库表 2.SQL语句 SELECT DISTINCT t.`province_name`,t.`province_co ...
- 三级级联查询省份名称和编码(保证名称不反复)的SQL语句
三级级联查询省份名称和编码(保证名称不反复)的SQL语句 1.省份.地市和县级数据库表 2.SQL语句 SELECT DISTINCT t.`province_name`,t.`province_co ...
- SQL 无限级分类语句
原文:SQL 无限级分类语句 原表数据为: 此处用到了with关键字,在程序中也可以用递归实现,但觉得还是没有一条sql方便 with tb (ID,Name,ParentID,Sort) as( s ...
- Oracle SQL 语言分类
Oracle SQL语句分类 2008-06-17 11:15:25 分类: Linux * 2008/06/17 星期二*蒙昭良*环境:WindowsXP + Oracle10gR2*Oracl ...
- sql注入--双查询报错注入
sql注入--双查询报错注入 背景:在sqli-labs第五关时,即使sql语句构造成功页面也没有回显出我们需要的信息,看到了有使用双查询操作造成报错的方式获得数据库信息,于是研究了一下双查询的报错原 ...
- SQL结构化查询语句
SQL结构化查询语句 SQL定义了查询所有关系型数据库的规则. 1.通用语法 SQL语句可以单行或者多行书写,以分号结尾 可以使用空格和缩进增强可读性 不区分大小写,但是关键字建议大写 3种注释 注释 ...
- MySQL的sql语言分类DML、DQL、DDL、DCL、
MySQL的sql语言分类DML.DQL.DDL.DCL. SQL语言一共分为4大类:数据定义语言DDL,数据操纵语言DML,数据查询语言DQL,数据控制语言DCL 1.数据定义语言DDL(Data ...
- SQL之联合查询学习笔记
定义: 联合查询可合并多个相似的选择查询的结果集.等同于将一个表追加到另一个表,从而实现将两个表的查询组合到一起,使用谓词为UNION或UNION ALL. 语法格式 UNION 可以将两个或两个以上 ...
随机推荐
- 这个类复制文本文件FileCopy
package JBJADV003; import java.io.File;import java.io.BufferedReader;import java.io.BufferedWriter;i ...
- sublime text 3 配置python IDE
Python越来越受“程序猿”们的青睐.快速的开发模式,简洁的代码格式,海量的扩展,这无疑都为python的火热奠定了基础. “磨刀不误砍柴工”,一款功能强劲的IDE能帮助开发者有效的管理.编辑,运行 ...
- Centos7yum安装Redis详细教程
原本是在自己的mac上安装redis的,通过brew去安装的redis觉得很简单,实际macos系统与centos系统还是有一些区别的. 1.yum安装redis服务 sudo yum install ...
- 用CSS的border画三角形
用border画三角形,实际上属于一种奇淫巧技. 利用的是border的一个特性:当一个元素的宽高都为0时,给border设置宽度(至少给2个相邻的边框设置宽度),border就会撑开这个元素. 四个 ...
- 事务之使用JDBC进行事务的操作2
本篇将讲诉如何使用JDBC进行数据库有关事务的操作.在上一篇博客中已经介绍了事务的概念,和在MySQL命令行窗口进行开启事务,提交事务以及回滚事务的操作. 似乎事务和批处理都可以一次同时执行多条SQL ...
- SLAM中的优化理论(一)—— 线性最小二乘
最近想写一篇系列博客比较系统的解释一下 SLAM 中运用到的优化理论相关内容,包括线性最小二乘.非线性最小二乘.最小二乘工具的使用.最大似然与最小二 乘的关系以及矩阵的稀疏性等内容.一方面是督促自己对 ...
- 构建高并发&高可用&安全的IT系统-高并发部分
什么是高并发? 狭义来讲就是你的网站/软件同一时间能承受的用户数量有多少 相关指标有 并发数:对网站/软件同时发起的请求数,一般也可代表实际的用户 每秒响应时间:常指一次请求到系统正确响的时间(以秒为 ...
- windows系统查看支持最大内存
1.使用快捷键:win+r打开命令窗口. 按回车到命令界面 2.弹出如下命令界面,在界面C:\Users\Administrator>处输入wmic memphysical get maxcap ...
- 关于解决mysql数据库乱码的问题
最近在开发的过程中频繁的使用到了mysql'这款数据库,mysql的中文乱码问题一直让人头疼.以前遇到过几次,但是都一不小心就解决了,这次终于明白到底是怎么回事了.可能我下面手的这种解决方案只适合于我 ...
- JVM学习笔记二:垃圾收集算法
垃圾回收要解决的问题: 哪些内存需要回收? 线程私有区域不需要回收,如PC.Stack.Native Stack:Java 堆和方法区需要 什么时候回收? 以后的文章解答 如何回收? 首先进行对象存活 ...