J'ai ce texte dans ma base de données,
categories_posts
categories_news
posts_add
news_add
Et je ne veux pas sélectionner les lignes avec categories
, j'utilise une requête comme celle-ci,
SELECT *
FROM developer_configurations_cms
WHERE developer_configurations_cms.cat_id = '1'
AND developer_configurations_cms.cfg_variables LIKE '%parent_id=2%'
AND developer_configurations_cms.cfg_name_unique NOT LIKE '%categories%'
mais il renvoie ces deux dans la sortie aussi ...
categories_posts
categories_news
Comment puis-je les ignorer dans ma requête?
Merci.
categories_posts
et categories_news
commencez par la sous-chaîne 'categories_' alors il suffit de vérifier que developer_configurations_cms.cfg_name_unique
commence par 'catégories' au lieu de vérifier si elle contient la sous-chaîne donnée. Traduire tout cela en une requête:
SELECT *
FROM developer_configurations_cms
WHERE developer_configurations_cms.cat_id = '1'
AND developer_configurations_cms.cfg_variables LIKE '%parent_id=2%'
AND developer_configurations_cms.cfg_name_unique NOT LIKE 'categories%'
Je ne sais pas pourquoi
cfg_name_unique NOT LIKE '%categories%'
renvoie toujours ces deux valeurs, mais peut-être les exclure explicitement:
SELECT *
FROM developer_configurations_cms
WHERE developer_configurations_cms.cat_id = '1'
AND developer_configurations_cms.cfg_variables LIKE '%parent_id=2%'
AND developer_configurations_cms.cfg_name_unique NOT LIKE '%categories%'
AND developer_configurations_cms.cfg_name_unique NOT IN ('categories_posts', 'categories_news')