Search Join for SEBLOD
Introduction
Search Join for SEBLOD is a field that let you apply a specific LEFT JOIN between 2 or more tables in order to tweak the search query.
An SQL JOIN clause is used to combine rows from two or more tables, based on a common field between them.
This plugin allow "LEFT JOIN" query: return all rows from the left table, and the matched rows from the right table.
Options include Left Join (1), Left Join (2), Left Join (3). For each query 4 attributes must be filled:
Left Table: Name of the first Table (ex: #usergroups)
Field Name of the common field in this first table (ex: id)
Field Name of the common field in the second table (ex: group_id)
Right Table: Name of the second Table (ex: #user_usergroup_map)
The table on the right side of each Join line (parameter), is assumed to be already known/defined by the query.
Once installed, the Search Join field can be created and added to the Search Form view of a List & Search Type.
Example for a list of Users:
In order to filter all Users assigned to a specific User Group, let's setup a Search Join like this:
userusergroupmap user_id id #users
usergroups id group_id #user_usergroup_map
Example for a list of Articles:
In order to filter all Articles created by a user assigned to a specific User Group, let's setup a Search Join like that:
users id created_by #content
userusergroupmap user_id id #users
usergroups id group_id #user_usergroup_map
This is not going to display anything on the Search Form.... but it will alter the SQL query.
In order to let the user select a specific User Group, you will need a 2nd field.. let's say a dynamic dropdown.
The storage of the field must be: Standard | User Group | id
Of course this is not specific to User Group, you can join the #__categories table or anything else..
Search Join for SEBLOD est un champ qui vous permet d’appliquer un LEFT JOIN spécifique entre 2 ou plusieurs tables afin de modifier la requête de recherche.
Une clause SQL JOIN est utilisée pour combiner des lignes à partir de 2 tables, basé sur un champ commun entre eux.
Ce plugin permet la requête LEFT JOIN : réplique toutes les lignes de la table de gauche, et les lignes correspondantes de la table de droite.
Les options incluent Left Join (1), Left Join (2), Left Join (3). Pour chaque requête 4 attributs doivent être remplis :
Left Table: nom de la première table (ex: #usergroups)
Nom de champ du champ commun dans la première table (ex: id)
Nom de champ du champ commun dans la seconde table (ex: group_id)
Right Table: nom de la seconde table (ex: #user_usergroup_map)
La table du côté droit de chaque ligne de jointure (paramètre) est supposé être déjà connu / défini par la requête.
Une fois installé, le champ Search Join peut être créé et ajouté au Search Form View de la List & Search Type.
Exemple pour une liste d’utilisateurs :
Dans le but de filtrer les utilisateurs affectés à un groupe spécifique d’utilisateurs, nous allons installer Search Join comme ceci :
userusergroupmap user_id id #users
usergroups id group_id #user_usergroup_map
Exemple pour une liste d’articles:
Afin de filtrer tous les articles créés par un utilisateur affecté à un groupe spécifique d’utilisateurs, nous allons installer Search Join comme ceci :
users id created_by #content
userusergroupmap user_id id #users
usergroups id group_id #user_usergroup_map
Cela ne va rien afficher dans le formulaire de recherche mais ça va modifier la requête SQL.
Afin de permettre à l’utilisateur de sélectionner un groupe spécifique d’utilisateurs, vous avez besoin d’un second champ, disons une liste déroulante dynamique.
Le stockage du champ doit être : Standard | User Group | id
Bien sûr, ce n’est pas spécifique à un groupe d’utilisateur, vous pouvez joindre la table #__categories ou autre chose.
Search Join for SEBLOD
- Version:
- 1.7.0
- Developer:
- Octopoos
- Last updated:
-
Jun 05 2023
1 year ago - Date added:
- Jul 28 2015
- License:
- GPLv2 or later
- Type:
- Paid download
- Includes:
- p
- Compatibility:
- J3 J4
Share