查询出与jack互为好友的人名字

建表

/*
Navicat MySQL Data Transfer

Source Server         : connect1
Source Server Version : 50611
Source Host           : localhost:3306
Source Database       : db_school

Target Server Type    : MYSQL
Target Server Version : 50611
File Encoding         : 65001

Date: 2016-03-23 10:01:57
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `t_user`
-- ----------------------------
DROP TABLE IF EXISTS `t_user`;
CREATE TABLE `t_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) DEFAULT NULL,
  `level` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of t_user
-- ----------------------------
INSERT INTO `t_user` VALUES ('1', 'jack', '1');
INSERT INTO `t_user` VALUES ('2', 'tom', '1');
INSERT INTO `t_user` VALUES ('3', 'jerry', '2');
INSERT INTO `t_user` VALUES ('4', 'jim', '2');
INSERT INTO `t_user` VALUES ('5', 'lucy', '3');
INSERT INTO `t_user` VALUES ('6', 'john', '2');

/*
Navicat MySQL Data Transfer

Source Server         : connect1
Source Server Version : 50611
Source Host           : localhost:3306
Source Database       : db_school

Target Server Type    : MYSQL
Target Server Version : 50611
File Encoding         : 65001

Date: 2016-03-23 10:02:04
*/

SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------
-- Table structure for `t_friend`
-- ----------------------------
DROP TABLE IF EXISTS `t_friend`;
CREATE TABLE `t_friend` (
  `f_id` int(11) NOT NULL AUTO_INCREMENT,
  `from_uid` int(11) DEFAULT NULL,
  `to_uid` int(11) DEFAULT NULL,
  PRIMARY KEY (`f_id`)
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8;

-- ----------------------------
-- Records of t_friend
-- ----------------------------
INSERT INTO `t_friend` VALUES ('1', '1', '2');
INSERT INTO `t_friend` VALUES ('2', '1', '3');
INSERT INTO `t_friend` VALUES ('3', '1', '4');
INSERT INTO `t_friend` VALUES ('4', '2', '1');
INSERT INTO `t_friend` VALUES ('5', '2', '3');
INSERT INTO `t_friend` VALUES ('6', '3', '2');
INSERT INTO `t_friend` VALUES ('7', '1', '5');
INSERT INTO `t_friend` VALUES ('8', '5', '1');

#互为好友
select name from t_user where id in (select t1.to_uid from t_friend t1, t_friend t2 where 

t1.from_uid=t2.to_uid and t1.to_uid=t2.from_uid and t1.from_uid=(select id from t_user where 

t_user.name='jack') and t2.to_uid=(select id from t_user where t_user.name='jack'));


posted on 2016-03-23 10:03  长456风  阅读(204)  评论(0编辑  收藏  举报

导航