· 8 years ago · May 08, 2018, 06:26 PM
1SELECT
2l.MENSAJE_id,
3l.MENSAJE,
4l.FECHA_MENSAJE ,
5l.usuario_has_usuario_usuario_id_usuario,
6l.usuario_has_usuario_usuario_id_usuario1,
7r.nom_usuario,
8s.nom_usuario
9FROM mensaje l
10INNER JOIN USUARIO_has_usuario p ON p.usuario_ID_USUARIO = l.usuario_has_usuario_usuario_id_usuario
11INNER JOIN USUARIO r ON r.ID_USUARIO = p.usuario_ID_USUARIO
12INNER JOIN USUARIO_has_usuario q ON q.usuario_ID_USUARIO1 = l.usuario_has_usuario_usuario_id_usuario1
13INNER JOIN USUARIO s ON s.ID_USUARIO = q.usuario_ID_USUARIO1
14
15//////////////////////////////////////////////////////////////////////////////////// este todoo el script //////////////////////////////////////////////////////////////////////////////////////////////
16
17SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
18
19SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
20SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';
21
22-- -----------------------------------------------------
23-- Schema mydb
24-- -----------------------------------------------------
25-- -----------------------------------------------------
26-- Schema mensagero
27-- -----------------------------------------------------
28CREATE SCHEMA IF NOT EXISTS `mensagero` DEFAULT CHARACTER SET utf8 ;
29USE `mensagero` ;
30
31-- -----------------------------------------------------
32-- Table `mensagero`.`usuario`
33-- -----------------------------------------------------
34CREATE TABLE IF NOT EXISTS `mensagero`.`usuario` (
35`id_usuario` INT(11) NOT NULL AUTO_INCREMENT,
36`nom_usuario` VARCHAR(45) NOT NULL,
37`ape_usuario` VARCHAR(45) NOT NULL,
38`fecha_nac_usuario` DATE NULL DEFAULT NULL,
39`email_usuario` VARCHAR(60) NOT NULL,
40`password_usuario` VARCHAR(100) NOT NULL,
41`celular_usuario` DECIMAL(10,0) NULL DEFAULT NULL,
42`fecha_creacion_usuario` DATETIME NOT NULL,
43`fecha_modificacion_usuario` DATETIME NULL DEFAULT NULL,
44`fecha_eliminacion_usuario` DATETIME NULL DEFAULT NULL,
45PRIMARY KEY (`id_usuario`))
46ENGINE = InnoDB
47AUTO_INCREMENT = 22
48DEFAULT CHARACTER SET = latin1;
49
50-- -----------------------------------------------------
51-- Table `mensagero`.`usuario_has_usuario`
52-- -----------------------------------------------------
53CREATE TABLE IF NOT EXISTS `mensagero`.`usuario_has_usuario` (
54`usuario_id_usuario` INT(11) NOT NULL,
55`usuario_id_usuario1` INT(11) NOT NULL,
56PRIMARY KEY (`usuario_id_usuario`, `usuario_id_usuario1`),
57INDEX `fk_usuario_has_usuario_usuario2_idx` (`usuario_id_usuario1` ASC),
58INDEX `fk_usuario_has_usuario_usuario1_idx` (`usuario_id_usuario` ASC),
59CONSTRAINT `fk_usuario_has_usuario_usuario1`
60FOREIGN KEY (`usuario_id_usuario`)
61REFERENCES `mensagero`.`usuario` (`id_usuario`)
62ON DELETE NO ACTION
63ON UPDATE NO ACTION,
64CONSTRAINT `fk_usuario_has_usuario_usuario2`
65FOREIGN KEY (`usuario_id_usuario1`)
66REFERENCES `mensagero`.`usuario` (`id_usuario`)
67ON DELETE NO ACTION
68ON UPDATE NO ACTION)
69ENGINE = InnoDB
70DEFAULT CHARACTER SET = latin1;
71
72-- -----------------------------------------------------
73-- Table `mensagero`.`mensaje`
74-- -----------------------------------------------------
75CREATE TABLE IF NOT EXISTS `mensagero`.`mensaje` (
76`mensaje_id` INT(11) NOT NULL AUTO_INCREMENT,
77`mensaje` VARCHAR(1000) NOT NULL,
78`fecha_mensaje` DATETIME NOT NULL,
79`usuario_has_usuario_usuario_id_usuario` INT(11) NOT NULL,
80`usuario_has_usuario_usuario_id_usuario1` INT(11) NOT NULL,
81PRIMARY KEY (`mensaje_id`),
82INDEX `fk_mensaje_usuario_has_usuario1_idx` (`usuario_has_usuario_usuario_id_usuario` ASC, `usuario_has_usuario_usuario_id_usuario1` ASC),
83CONSTRAINT `fk_mensaje_usuario_has_usuario1`
84FOREIGN KEY (`usuario_has_usuario_usuario_id_usuario` , `usuario_has_usuario_usuario_id_usuario1`)
85REFERENCES `mensagero`.`usuario_has_usuario` (`usuario_id_usuario` , `usuario_id_usuario1`)
86ON DELETE NO ACTION
87ON UPDATE NO ACTION)
88ENGINE = InnoDB
89AUTO_INCREMENT = 2
90DEFAULT CHARACTER SET = latin1;
91
92-- -----------------------------------------------------
93-- Table `mensagero`.`publicacion`
94-- -----------------------------------------------------
95CREATE TABLE IF NOT EXISTS `mensagero`.`publicacion` (
96`id_publicacion` INT(11) NOT NULL AUTO_INCREMENT,
97`mensaje_publicacion` VARCHAR(20000) NOT NULL,
98`fecha_publicacion` DATETIME NOT NULL,
99`usuario_id_usuario` INT(11) NOT NULL,
100PRIMARY KEY (`id_publicacion`),
101INDEX `fk_publicacion_usuario1_idx` (`usuario_id_usuario` ASC),
102CONSTRAINT `fk_publicacion_usuario1`
103FOREIGN KEY (`usuario_id_usuario`)
104REFERENCES `mensagero`.`usuario` (`id_usuario`)
105ON DELETE NO ACTION
106ON UPDATE NO ACTION)
107ENGINE = InnoDB
108AUTO_INCREMENT = 3
109DEFAULT CHARACTER SET = latin1;
110
111SET SQL_MODE=@OLD_SQL_MODE;
112SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
113SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;
114
115use mensagero;
116insert into usuario values ('1','jesus','Huancas','','jhonjesuhuancas@gmail.com','123','960321093',now(),now(),now());
117insert into usuario values ('2','jhon','Cordova','','jhoncordova@gmail.com','123456','960321093',now(),now(),now());
118insert into usuario values ('3','ana','Vazques','','ana@gmail.com','321','960321094',now(),now(),now());
119insert into usuario_has_usuario values ('1','2');
120insert into usuario_has_usuario values ('1','3');
121insert into mensaje values ('1','Hola que tal como estas',now(),'1','2')
122insert into mensaje values ('2','Hola estas bien',now(),'1','3')
123
124SELECT
125l.MENSAJE_id,
126l.MENSAJE,
127l.FECHA_MENSAJE ,
128l.usuario_has_usuario_usuario_id_usuario,
129l.usuario_has_usuario_usuario_id_usuario1,
130r.nom_usuario,
131s.nom_usuario
132FROM mensaje l
133INNER JOIN USUARIO_has_usuario p ON p.usuario_ID_USUARIO = l.usuario_has_usuario_usuario_id_usuario
134INNER JOIN USUARIO r ON r.ID_USUARIO = p.usuario_ID_USUARIO
135INNER JOIN USUARIO_has_usuario q ON q.usuario_ID_USUARIO1 = l.usuario_has_usuario_usuario_id_usuario1
136INNER JOIN USUARIO s ON s.ID_USUARIO = q.usuario_ID_USUARIO1