Comment écrire une sous-requête dans le framework yii2
Dec 09, 2019 pm 01:52 PMComment utiliser la sous-requête dans yii
La première étape consiste à créer une sous-requête, qui peut être créée en fonction sur yiidbQuery ou basé sur Model.
$subQuery = Order::find() ->where(['user_id' => $userId]) ->andWhere(['status' => $status]);
peut également ajouter du tri et de la pagination, par exemple?:
$subQuery->orderBy(['id' => SORT_ASC]) ->offset($offset) ->limit($pageSize);
Ensuite, nous pouvons utiliser cette sous-requête dans notre requête principale, à condition que ce soit un endroit où les sous-requêtes peuvent être écrites dans MySQL , vous pouvez utiliser cette sous-requête directement.
$list = (new Query())->select($field) ->from(['order' => $subQuery]) // 在這里使用了子查詢 ->leftJoin(['goods' => OrderGoods::tableName()], 'order.id = goods.order_id') ->createCommand() ->queryAll();
La déclaration finale générée
SELECT * FROM ( SELECT * FROM `od_order` WHERE ( `user_id` = '1' ) ORDER BY `id` ASC LIMIT 10 OFFSET 1 ) `order` LEFT JOIN `od_order_goods` `goods` ON `order`.id = goods.order_id
Le site Web chinois PHP propose un grand nombre de tutoriels d'introduction Yii gratuits, tout le monde est invité à apprendre?!
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undress AI Tool
Images de déshabillage gratuites

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

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

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
échangez les visages dans n'importe quelle vidéo sans effort grace à notre outil d'échange de visage AI entièrement gratuit?!

Article chaud

Outils chauds

Bloc-notes++7.3.1
éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

L'évaluation du rapport co?t/performance du support commercial pour un framework Java implique les étapes suivantes : Déterminer le niveau d'assurance requis et les garanties de l'accord de niveau de service (SLA). L’expérience et l’expertise de l’équipe d’appui à la recherche. Envisagez des services supplémentaires tels que les mises à niveau, le dépannage et l'optimisation des performances. évaluez les co?ts de support commercial par rapport à l’atténuation des risques et à une efficacité accrue.

La courbe d'apprentissage d'un framework PHP dépend de la ma?trise du langage, de la complexité du framework, de la qualité de la documentation et du support de la communauté. La courbe d'apprentissage des frameworks PHP est plus élevée par rapport aux frameworks Python et inférieure par rapport aux frameworks Ruby. Par rapport aux frameworks Java, les frameworks PHP ont une courbe d'apprentissage modérée mais un temps de démarrage plus court.

Le framework PHP léger améliore les performances des applications grace à une petite taille et une faible consommation de ressources. Ses fonctionnalités incluent : une petite taille, un démarrage rapide, une faible utilisation de la mémoire, une vitesse de réponse et un débit améliorés et une consommation de ressources réduite. Cas pratique : SlimFramework crée une API REST, seulement 500 Ko, une réactivité élevée et un débit élevé.

Feuille de route d'apprentissage du framework Java pour différents domaines : Développement Web : SpringBoot et PlayFramework. Couche de persistance?: Hibernate et JPA. Programmation réactive c?té serveur : ReactorCore et SpringWebFlux. Informatique temps réel : ApacheStorm et ApacheSpark. Cloud computing?: AWS SDK pour Java et Google Cloud Java.

Choisissez le meilleur framework Go en fonction des scénarios d'application?: tenez compte du type d'application, des fonctionnalités du langage, des exigences de performances et de l'écosystème. Frameworks Go courants : Gin (application Web), Echo (service Web), Fibre (haut débit), gorm (ORM), fasthttp (vitesse). Cas pratique : construction de l'API REST (Fiber) et interaction avec la base de données (gorm). Choisissez un framework?: choisissez fasthttp pour les performances clés, Gin/Echo pour les applications Web flexibles et gorm pour l'interaction avec la base de données.

Dans YII2, il existe deux fa?ons principales d'afficher des invites d'erreur. L'une consiste à utiliser yii :: $ app- & amp; gt; errorhandler- & amp; gt; exception () pour attraper et afficher automatiquement les erreurs lorsqu'une exception se produit. L'autre consiste à utiliser $ this- & amp; gt; adderror (), qui affiche une erreur lorsque la validation du modèle échoue et peut être accessible dans la vue via $ modèle- & amp; gt; getErrors (). Dans la vue, vous pouvez utiliser if ($ errors = $ modèle- & amp; gt; getErrors ())

Il existe cinq malentendus dans l'apprentissage du framework Go?: une dépendance excessive à l'égard du framework et une flexibilité limitée. Si vous ne respectez pas les conventions du framework, le code sera difficile à maintenir. L'utilisation de bibliothèques obsolètes peut entra?ner des problèmes de sécurité et de compatibilité. L'utilisation excessive de packages obscurcit la structure du code. Ignorer la gestion des erreurs entra?ne un comportement inattendu et des plantages.

Problèmes courants d'échec du framework Java?:?échec du pool de connexions?: augmentez la taille du pool de connexions ou utilisez des outils de surveillance pour résoudre les problèmes d'épuisement du pool de connexions. Exception de chargement paresseux Hibernate?: initialisez explicitement les entités de chargement paresseux avant de les utiliser. Erreurs de mappage JSON?: vérifiez l'exactitude du type de données et du format JSON. Problèmes de configuration des filtres et des intercepteurs?: vérifiez à nouveau la configuration pour vous assurer qu'elle fonctionne comme prévu.
