Ответ 1
Простое решение:
SELECT DISTINCT meta_value
FROM `wp_postmeta`
WHERE meta_key = "aaa" AND meta_value != "";
Я использую sql-запрос для извлечения строк из таблицы. Я хочу выбрать строки только с отдельными значениями, и если для какой-либо строки не введено значение, эта строка не должна быть там.
SELECT DISTINCT meta_value FROM `wp_postmeta` WHERE meta_key = "aaa";
Это запрос, который я использую, я получаю отдельные строки по этому запросу, но также получаю пустую строку.
Простое решение:
SELECT DISTINCT meta_value
FROM `wp_postmeta`
WHERE meta_key = "aaa" AND meta_value != "";
Попробуйте этот запрос с помощью IS NOT NULL
SELECT DISTINCT meta_value
FROM `wp_postmeta`
WHERE meta_key = "aaa"
AND meta_value IS NOT NULL ;
Я бы использовал
where meta_key = "aaa"
AND (meta_value IS NOT NULL or meta_value != "");
но это зависит от используемого вами двигателя и, самое главное, того, как вы вставляете пустые значения. NULL < > 0 < > ''
SELECT DISTINCT meta_value
FROM `wp_postmeta`
WHERE meta_key = "aaa"
AND meta_value != "";
В этом запросе отображаются разные значения, если столбец содержит некоторые нулевые значения, которые также удаляются.
select distinct color from tbl_product where color is not null
" select distinct color from tbl_product where color is not null
"
Я надеюсь, что этот код полезен для всех..
Вам нужно обработать нулевое значение в столбце meta_value
. Вы можете сделать так, как следует.
SELECT DISTINCT meta_value FROM wp_postmeta WHERE meta_key = 'aaa' and meta_value != ISNULL(meta_value,'')
надеюсь, что это будет работать нормально.