mysql -- 多条件关联查询(2)
1 SET FOREIGN_KEY_CHECKS=0; 2 3 -- ---------------------------- 4 -- Table structure for qsyz_app_user 5 -- ---------------------------- 6 DROP TABLE IF EXISTS `qsyz_app_user`; 7 CREATE TABLE `qsyz_app_user` ( 8 `userid` int(11) NOT NULL, 9 `role` varchar(255) DEFAULT NULL COMMENT '办公室', 10 `nickname` varchar(255) DEFAULT NULL COMMENT '名称' 11 ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 12 13 -- ---------------------------- 14 -- Records of qsyz_app_user 15 -- ---------------------------- 16 INSERT INTO `qsyz_app_user` VALUES ('1', '办公室', '张三'); 17 INSERT INTO `qsyz_app_user` VALUES ('2', '办公室', '李四'); 18 INSERT INTO `qsyz_app_user` VALUES ('3', '总经办', '张三');
1 DROP TABLE IF EXISTS `qsyz_app_version`; 2 CREATE TABLE `qsyz_app_version` ( 3 `id` int(11) NOT NULL, 4 `version_name` varchar(255) DEFAULT NULL COMMENT '姓名', 5 `version_num` int(11) DEFAULT NULL, 6 `version_size` double DEFAULT NULL, 7 `create_time` datetime DEFAULT NULL, 8 `version_text` varchar(255) DEFAULT NULL, 9 `down_url` varchar(255) DEFAULT NULL, 10 `phone_type` varchar(255) DEFAULT NULL 11 ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 12 13 -- ---------------------------- 14 -- Records of qsyz_app_version 15 -- ---------------------------- 16 INSERT INTO `qsyz_app_version` VALUES ('440289813', '1.1.2', '20171205', '0', '2017-12-05 00:00:00', '56', 'http://192.168.1.101:8080/images/1.JPEG', 'android'); 17 INSERT INTO `qsyz_app_version` VALUES ('440378169', '1.1.2', '20171109', '0', '2017-12-05 00:00:00', '565', 'http://192.168.1.101:8080/images/1.JPEG', 'android'); 18 INSERT INTO `qsyz_app_version` VALUES ('749696543', '1.1.0', '1', '0', '2017-10-23 00:00:00', 'ghkfadjghkl', 'http://192.168.2.112:8080/images/app-debug.apk', 'android'); 19 INSERT INTO `qsyz_app_version` VALUES ('750259190', '21', '23', '0', '2017-10-23 00:00:00', '家居空间', 'http://192.168.2.112:8080/images/ConstantUtil.java', 'android');
1 DROP TABLE IF EXISTS `qsyz_shop_order`; 2 CREATE TABLE `qsyz_shop_order` ( 3 `user_id` int(11) NOT NULL, 4 `order_status` varchar(255) DEFAULT NULL COMMENT '支付成功', 5 `create_date` datetime DEFAULT NULL COMMENT '日期要求为今天' 6 ) ENGINE=MyISAM DEFAULT CHARSET=utf8; 7 8 -- ---------------------------- 9 -- Records of qsyz_shop_order 10 -- ---------------------------- 11 INSERT INTO `qsyz_shop_order` VALUES ('1', '支付成功', '2018-04-21 15:45:44'); 12 INSERT INTO `qsyz_shop_order` VALUES ('2', '支付成功', '2018-04-21 15:45:49'); 13 INSERT INTO `qsyz_shop_order` VALUES ('3', '支付成功', '2018-04-21 15:45:55');
问题(一)如下:
查询出今天办公室人员的订餐人员 qsyz_app_user用户表: userid、role、 nickname qsyz_shop_order订单表: user_id、order_status、 create_date role 为“办公室” order_status 为“支付成功” 日期要求为今天
实现语句:
SELECT * FROM qsyz_app_user a, qsyz_shop_order b WHERE a.userid = b.user_id AND b.order_status = '支付成功' AND b.create_date > '2017-12-25 16:05:05'; #按日期模糊查询出结果 SELECT a.nickname FROM qsyz_app_user a, qsyz_shop_order b WHERE a.userid = b.user_id AND a.role = '办公室' AND b.order_status = '支付成功' AND b.create_date LIKE '%2018-04-21%';
mysql like的写法:
MYSQL如何进行sql like (sql查询结果)的查询
1 create_date like CONCAT('%','2018-04-21','%'); #可以避免sql注入。 2 create_date like '%2018-04-21%'; 3 4 select * from table1 where `text` like (select name from table2 where id =3); 5 select * from table1 where `text` like '%'(select name from table2 where id =3)'%'; 6 select * from table1 where `text` like '%' + (select name from table2 where id =3) +'%'; 7 select * from table1 where `text` like '%(select name from table2 where id =3)%'; 8 select * from table1 where `text` like '%’select name from table2 where id =3‘%'; 9 10 select * from table1 where `text` like '%( 11 select name from table2 where id =3 12 ) +'%';(第二条SQL单独占一行)
问题(二)如下:
1 SELECT 2 * 3 FROM 4 qsyz_app_version 5 WHERE 6 version_num = ( 7 SELECT 8 max(version_num) 9 FROM 10 qsyz_app_version 11 WHERE 12 phone_type = 'android' 13 );
浙公网安备 33010602011771号