【问题标题】:SQL select distinct rows and ignore row if blankSQL 选择不同的行,如果为空则忽略行
【发布时间】:2012-06-10 08:26:57
【问题描述】:

我正在使用 sql 查询从表中获取行。我只想选择具有不同值的行,如果没有为某行输入值,则该行不应该存在。

SELECT DISTINCT meta_value FROM `wp_postmeta` WHERE meta_key = "aaa";

这是我正在使用的查询,我通过该查询获得了不同的行,但也获得了空白行。

【问题讨论】:

    标签: mysql phpmyadmin


    【解决方案1】:

    您需要处理meta_value 列中的空值。 你可以这样做。

    SELECT DISTINCT meta_value FROM wp_postmeta WHERE meta_key = 'aaa' and meta_value != ISNULL(meta_value,'')
    

    希望这会正常工作。

    【讨论】:

      【解决方案2】:

      在这个查询中,显示不同的值,如果一列包含一些空值也会被删除。

      select distinct color from tbl_product where color is not null

      我希望这段代码对所有人都有帮助..

      【讨论】:

        【解决方案3】:

        我会用

        where meta_key = "aaa"
        AND (meta_value IS NOT NULL or meta_value != "");
        

        但这取决于您使用的引擎,最重要的是 - 您插入空值的方式。 NULL 0 ' '

        【讨论】:

          【解决方案4】:

          IS NOT NULL试试这个查询

          SELECT DISTINCT meta_value
          FROM `wp_postmeta`
          WHERE meta_key = "aaa"
          AND meta_value IS NOT NULL ;
          

          【讨论】:

            【解决方案5】:
            SELECT DISTINCT meta_value
            FROM `wp_postmeta`
            WHERE meta_key = "aaa"
            AND meta_value != "";
            

            【讨论】:

              【解决方案6】:

              简单的解决方案:

              SELECT DISTINCT meta_value 
              FROM `wp_postmeta` 
              WHERE meta_key = "aaa" AND meta_value != "";
              

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 2022-12-07
                • 1970-01-01
                • 1970-01-01
                • 2023-02-26
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多