Est-il possible qu'une instruction mysql sélectionne un champ de n'importe quelle table? par exemple: SELECT * FROM * WHERE ? IN (SELECT * FROM *)
pour implémenter une méthode de recherche générique qui ne dépend pas d'une table ou d'un champ spécifique. Je viens de lire que nous pouvons lister toutes les tables d'une base de données avec une commande SQL: SHOW TABLES
Avez-vous une idée de comment pouvons-nous faire cela? Merci :)Sélectionner un champ de n'importe quelle table
Répondre
Vous pouvez essayer quelque chose comme ça en php
$getTables = mysql_query("show tables");
$tmpString = '';
while ($table_data = mysql_fetch_row($getTables))
{
$tmpString.=$table_data[0].',';
}
$ALL_DATABASE_TABLES = substr($string,0,strlen($tmpString)-1); //Remove the last ,
Alors tu as toutes vos tables et vous pouvez construire votre requête
comme celui-ci
$qry = "SELECT * FROM $ALL_DATABASE_TABLES"
Créez une procédure et utilisez un mécanisme de requête dynamique, par ex. ci-dessous:
CREATE PROCEDURE dynamicQuery()
BEGIN
SET @tableName := 'TABLENAME1';
SET @SqlStr = 'SELECT * FROM @tableName';
PREPARE n_StrSQL FROM @SqlStr;
EXECUTE n_StrSQL;
DEALLOCATE PREPARE n_StrSQL;
END
Merci :) mais c'est comme si je fais: 'SELECT * FROM table1, table2, ...., table200 O WH? IN (SELECT * FROM table1, table2, ...., table200), n'est-ce pas? – Copernic
@Mehdi: Non, c'est comme exécuter 'select * from Table1' ou' select * from Table2'. Tout ce que je voulais dire, c'est que vous pouvez construire une requête dynamique en chantant des variables et les exécuter. C'est à vous de décider quelle requête vous voulez construire. –
- 1. Comment sélectionner un champ de texte
- 2. sélectionner un champ en magasin
- 3. Sélectionner les champs de la table avec le champ DISTINCT
- 4. TSQL sélectionner un champ je compte aussi
- 5. Comment copier un champ de modification d'une table dans un nouveau champ dans la même table?
- 6. sélectionner le nombre de champ par groupe
- 7. Comment sélectionner et afficher un champ spécifique de table may dans cakephp?
- 8. Sélectionner champ calculé
- 9. Comment sélectionner l'incrément du champ de mysql
- 10. copie un champ de la table à un autre champ dans la même table
- 11. Sélectionner un champ spécifique d'un tableau HABTM imbriqué
- 12. Comment puis-je sélectionner un champ masqué par valeur?
- 13. JPA un champ dépend dans un autre champ même table
- 14. SQL - Comment sélectionner un champ unique avec un autre champ associé à la valeur min
- 15. Sur quelle table/vue recherchez-vous pour sélectionner tous les noms de table dans un schéma Oracle?
- 16. commande awk pour sélectionner le mot exact dans un champ
- 17. Membership.GetUser - Table + champ
- 18. Comment sélectionner un champ à partir du résultat d'un select?
- 19. PHPmyadmin: Choisissez quelle image afficher sur un champ de table donné?
- 20. Knockout sélectionner l'erreur de champ de données
- 21. Comment sélectionner avec un champ binaire? (php, mysql)
- 22. Sélectionner une table aléatoire
- 23. SQL Sous-sélectionner comme champ?
- 24. Copier d'un champ de table vers un autre champ de table dans phpmyadmin?
- 25. Advanced MySQL Query sélectionner et comparer l'heure dans un champ
- 26. Vue de table sélectionner une ligne
- 27. SÉLECTIONNER une ligne unique du champ 3 au champ 4
- 28. Comment sélectionner un champ en plus de tout le reste?
- 29. Sélectionner un champ distinct lors de la jointure dans MySQL
- 30. Afficher un champ de texte sur une option spécifique sélectionner
-t-il doit être seulement en SQL ou vous pouvez utiliser quelque chose comme PHP? – Marc
Ceci est couvert dans ce post, il existe plusieurs solutions. http://stackoverflow.com/questions/562457/search-for-all-occurrences-of-a-string-in-a-mysql-database – mikeswright49
Merci @Marc :) Non, ça peut être en PHP (mais seulement en PHP parce que je travaille avec) – Copernic