esolve
V2EX  ›  问与答

为何对空表 select count(*)返回 1?

  •  
  •   esolve · Oct 19, 2017 · 2213 views
    This topic created in 3127 days ago, the information mentioned may be changed or developed.

    为何对空表 select count(*)返回 1 ?

     mysql> select * from t_black_user_;
     Empty set (0.00 sec)
    
    mysql> SELECT COUNT(*) from t_black_user_;
    +---------------+
    | t_black_user_ |
    +---------------+
    |             1 |
    +---------------+
    1 row in set (0.00 sec)
    
    5 replies    2017-10-19 11:48:28 +08:00
    zk8802
        1
    zk8802  
       Oct 19, 2017 via iPhone
    应该是 select count(*) from t_black_user_;
    QAPTEAWH
        3
    QAPTEAWH  
       Oct 19, 2017
    @zk8802 你贴的了 lz 说的不是一回事吧。

    mark 等结论。
    zgx030030
        4
    zgx030030  
       Oct 19, 2017
    为什么感觉你结果中 “ 1 ”的上面的字段名应该是“ COUNT(*)” , 你的为什么是表名?
    chenset
        5
    chenset  
       Oct 19, 2017
    会不会是非同一个 transaction 或者 session. 没 commit 或者 rollback
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5683 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 39ms · UTC 07:57 · PVG 15:57 · LAX 00:57 · JFK 03:57
    ♥ Do have faith in what you're doing.