Maison développement back-end tutoriel php 跪求一句SQL语句,坐等。解决办法

跪求一句SQL语句,坐等。解决办法

Jun 13, 2016 am 10:24 AM
box id Note null user

跪求一句SQL语句,坐等。
4个表,

box是盒子,
note是消息,
box_user是哪些用户在哪些盒子里聊天。
box_note是哪些消息在哪些盒子里(消息可在多盒共享)。

盒子就和微信的一个聊天框一样,消息就是里面的消息。

SQL code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->mysql> describe box;      +---------------------------+------------+------+-----+---------+----------------+| Field                     | Type       | Null | Key | Default | Extra          |+---------------------------+------------+------+-----+---------+----------------+| box_id                    | bigint(20) | NO   | PRI | NULL    | auto_increment || type                      | tinyint(4) | NO   |     | NULL    |                || status_type               | char(1)    | NO   |     | NULL    |                || create_time               | datetime   | NO   |     | NULL    |                || delete_time_from_one_part | datetime   | NO   |     | NULL    |                |+---------------------------+------------+------+-----+---------+----------------+5 rows in set (0.00 sec)mysql> describe box_user;+---------+------------+------+-----+---------+-------+| Field   | Type       | Null | Key | Default | Extra |+---------+------------+------+-----+---------+-------+| user_id | bigint(20) | NO   | PRI | 0       |       || box_id  | bigint(20) | NO   | PRI | 0       |       |+---------+------------+------+-----+---------+-------+2 rows in set (0.01 sec)mysql> describe note;+-------------+-------------+------+-----+---------+----------------+| Field       | Type        | Null | Key | Default | Extra          |+-------------+-------------+------+-----+---------+----------------+| note_id     | bigint(20)  | NO   | PRI | NULL    | auto_increment || user_id     | bigint(20)  | NO   | MUL | NULL    |                || type        | tinyint(4)  | NO   |     | NULL    |                || content     | text        | NO   |     | NULL    |                || mood        | tinyint(4)  | NO   |     | NULL    |                || locate      | varchar(30) | NO   |     | none    |                || privacy     | char(1)     | NO   |     | 1       |                || create_time | datetime    | NO   | MUL | NULL    |                || delay       | int(11)     | NO   |     | 0       |                || festival    | char(30)    | NO   |     | NULL    |                || delete_time | datetime    | NO   |     | NULL    |                |+-------------+-------------+------+-----+---------+----------------+11 rows in set (0.00 sec)mysql> describe box_note;+---------+------------+------+-----+---------+-------+| Field   | Type       | Null | Key | Default | Extra |+---------+------------+------+-----+---------+-------+| note_id | bigint(20) | NO   | PRI | 0       |       || box_id  | bigint(20) | NO   | PRI | 0       |       |+---------+------------+------+-----+---------+-------+2 rows in set (0.00 sec)
Copier après la connexion


想法很简单,试了半天都失败:想根据user_id获取该user的所有盒子以及每个盒子最后一条消息的时间。

我准备了这两个基本SQL语句,
SQL code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->//获取所有user_id用户的盒子select box.box_id,type,status_type from box,box_user where box.box_id=box_user.box_id and box_user.user_id=1;//获取所有内部具有消息的user_id用户的盒子以及最后更新时间select box_id,max(create_time) as time from note,box_note where note.note_id=box_note.note_id and note.user_id=1 group by box_id;
Copier après la connexion

它们分别执行结果:
SQL code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->mysql> select box.box_id,type,status_type from box,box_user where box.box_id=box_user.box_id and box_user.user_id=1;+--------+------+-------------+| box_id | type | status_type |+--------+------+-------------+|      1 |    0 | 0           ||      6 |    1 | 0           ||      7 |    3 | 0           ||      8 |    3 | 0           |+--------+------+-------------+4 rows in set (0.00 sec)mysql> select box_id,max(create_time) as time from note,box_note where note.note_id=box_note.note_id and note.user_id=1 group by box_id;+--------+---------------------+| box_id | time                |+--------+---------------------+|      1 | 2012-05-21 00:00:00 ||      6 | 2012-05-30 00:00:00 |+--------+---------------------+2 rows in set (0.00 sec)<div class="clear">
                 
              
              
        
            </div>
Copier après la connexion
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Cet identifiant Apple n'est pas encore utilisé dans l'iTunes Store : correctif Cet identifiant Apple n'est pas encore utilisé dans l'iTunes Store : correctif Jun 10, 2024 pm 05:42 PM

Lors de la connexion à iTunesStore à l'aide de l'AppleID, cette erreur indiquant "Cet AppleID n'a pas été utilisé dans iTunesStore" peut s'afficher à l'écran. Il n'y a pas de messages d'erreur à craindre, vous pouvez les corriger en suivant ces ensembles de solutions. Correctif 1 – Modifier l'adresse de livraison La principale raison pour laquelle cette invite apparaît dans l'iTunes Store est que vous n'avez pas la bonne adresse dans votre profil AppleID. Étape 1 – Tout d’abord, ouvrez les paramètres iPhone sur votre iPhone. Étape 2 – AppleID doit être au-dessus de tous les autres paramètres. Alors, ouvrez-le. Étape 3 – Une fois sur place, ouvrez l’option « Paiement et expédition ». Étape 4 – Vérifiez votre accès à l'aide de Face ID. étape

Correction de l'erreur de disque ID d'événement 55, 50, 98, 140 dans l'observateur d'événements Correction de l'erreur de disque ID d'événement 55, 50, 98, 140 dans l'observateur d'événements Mar 19, 2024 am 09:43 AM

Si vous trouvez l'ID d'événement 55, 50, 140 ou 98 dans l'Observateur d'événements de Windows 11/10, ou si vous rencontrez une erreur indiquant que la structure du système de fichiers du disque est endommagée et ne peut pas être utilisée, veuillez suivre le guide ci-dessous pour résoudre le problème. Que signifie l'événement 55, Structure du système de fichiers sur le disque corrompue et inutilisable ? À la session 55, la structure du système de fichiers sur le disque Ntfs est corrompue et inutilisable. Veuillez exécuter l'utilitaire chkMSK sur le volume. Lorsque NTFS ne parvient pas à écrire des données dans le journal des transactions, une erreur avec l'ID d'événement 55 est déclenchée, ce qui empêchera NTFS de terminer l'opération incapable d'écrire les données de transaction. Cette erreur se produit généralement lorsque le système de fichiers est corrompu, probablement en raison de la présence de secteurs défectueux sur le disque ou de l'inadéquation du système de fichiers du sous-système de disque.

Où puis-je trouver l'identifiant Alibaba ? Où puis-je trouver l'identifiant Alibaba ? Mar 08, 2024 pm 09:49 PM

Dans le logiciel Alibaba, une fois que vous avez enregistré un compte avec succès, le système vous attribuera un identifiant unique, qui servira d'identité sur la plateforme. Mais pour de nombreux utilisateurs, ils souhaitent interroger leur identifiant, mais ne savent pas comment le faire. Ensuite, l'éditeur de ce site Web vous présentera ci-dessous une introduction détaillée aux étapes de la stratégie, j'espère que cela pourra vous aider ! Où puis-je trouver la réponse à l'identifiant Alibaba : [Alibaba]-[Mon]. 1. Ouvrez d'abord le logiciel Alibaba. Après avoir accédé à la page d'accueil, nous devons cliquer sur [Mon] dans le coin inférieur droit. 2. Ensuite, après avoir accédé à la page Mon, nous pouvons voir [id] en haut de la page ; L'ID est-il le même que Taobao ID et Taobao ID sont différents, mais les deux

ID d'événement 4660 : objet supprimé [Correctif] ID d'événement 4660 : objet supprimé [Correctif] Jul 03, 2023 am 08:13 AM

Certains de nos lecteurs ont rencontré l'événement ID4660. Ils ne savent souvent pas quoi faire, c'est pourquoi nous l'expliquons dans ce guide. L'ID d'événement 4660 est souvent enregistré lorsque des objets sont supprimés. Nous explorerons donc également quelques moyens pratiques de le corriger sur votre ordinateur. Qu'est-ce que l'événement ID4660 ? L'ID d'événement 4660 est lié aux objets dans Active Directory et sera déclenché par l'un des facteurs suivants : Suppression d'objet – Un événement de sécurité avec l'ID d'événement 4660 est enregistré chaque fois qu'un objet est supprimé d'Active Directory. Modifications manuelles – L'ID d'événement 4660 peut être généré lorsqu'un utilisateur ou un administrateur modifie manuellement les autorisations d'un objet. Cela peut se produire lors de la modification des paramètres d'autorisation, de la modification des niveaux d'accès ou de l'ajout ou de la suppression de personnes ou de groupes.

Où vérifier l'identifiant vidéo Tencent Où vérifier l'identifiant vidéo Tencent Feb 24, 2024 pm 06:25 PM

Où puis-je vérifier l'ID vidéo Tencent ? Il existe un identifiant exclusif dans l'application Tencent Video, mais la plupart des utilisateurs ne savent pas comment vérifier l'ID vidéo Tencent. Voici ensuite le didacticiel graphique sur la façon de vérifier l'ID vidéo Tencent apporté par l'application. éditeur pour les utilisateurs intéressés, venez jeter un oeil ! Tutoriel d'utilisation de Tencent Video Où vérifier l'ID de Tencent Video 1. Ouvrez d'abord l'application Tencent Video et entrez dans la zone spéciale via [Centre personnel] dans le coin inférieur droit de la page principale ; Fonction Paramètres] ; 3. Accédez ensuite à la page Paramètres, cliquez sur [Quitter le compte] en bas. 4. Enfin, vous pouvez afficher le numéro d'identification exclusif sur la page ci-dessous ;

Quelle est la différence entre null et NULL en langage C Quelle est la différence entre null et NULL en langage C Sep 22, 2023 am 11:48 AM

La différence entre null et NULL en langage C est la suivante : null est une définition de macro en langage C, généralement utilisée pour représenter un pointeur nul, qui peut être utilisé pour initialiser des variables de pointeur ou pour déterminer si le pointeur est nul dans une instruction conditionnelle ; NULL est une définition de macro en langage C. Une constante prédéfinie dans , généralement utilisée pour représenter une valeur nulle, utilisée pour représenter un pointeur nul, un tableau de pointeurs nuls ou un pointeur de structure nulle.

Que dois-je faire si vue ne parvient pas à obtenir l'attribut id ? Que dois-je faire si vue ne parvient pas à obtenir l'attribut id ? Jan 29, 2023 pm 02:03 PM

Vue ne peut pas obtenir l'attribut id car getElementById est utilisé dans la fonction hook "created()" et Vue n'a pas terminé le montage ; la solution est de "created() {let serachBox = document.getElementById('searchBox') ;.. .}" Le code peut être migré vers la fonction hook "Mounted()".

Que signifient indéfini et nul ? Que signifient indéfini et nul ? Nov 20, 2023 pm 02:39 PM

En JavaScript, non défini et null représentent le concept de « rien » : 1. undéfini représente une variable non initialisée ou une propriété inexistante lorsqu'une variable est déclarée mais qu'aucune valeur ne lui est attribuée, la valeur de la variable est undéfinie. lors de l'accès à des propriétés qui n'existent pas dans l'objet, la valeur renvoyée est également indéfinie ; 2. null représente une référence d'objet vide Dans certains cas, la référence d'objet peut être définie sur null pour libérer la mémoire qu'elle occupe.

See all articles