Php 这是什么;选择TRUE";MySQL语法在做什么?

Php 这是什么;选择TRUE";MySQL语法在做什么?,php,mysql,sql,Php,Mysql,Sql,我正在浏览一些旧的未使用代码,但找不到有关select查询语法的任何文档: $stmt = $dbh->prepare("SELECT TRUE FROM `users` WHERE `username`= :username LIMIT 1"); $stmt->bindParam(':username', $regUsername); $stmt->execute(); MySQL文档没有提及任何内容,我不确定它返回的值是多少。。。如果一条记录匹配,它是否只返回“1

我正在浏览一些旧的未使用代码,但找不到有关select查询语法的任何文档:

    $stmt = $dbh->prepare("SELECT TRUE FROM `users` WHERE `username`= :username LIMIT 1");
$stmt->bindParam(':username', $regUsername);
$stmt->execute();

MySQL文档没有提及任何内容,我不确定它返回的值是多少。。。如果一条记录匹配,它是否只返回“1”,如果不匹配,则返回“0”?

如果有匹配,它会选择一个包含单个
1
的行,如果没有匹配,则根本不选择行

TRUE=1  //selects a row with a single 1
and FALSE=0

SQL中不保留True或False。大多数情况下,在编程时,您会使用bit,并且
0=False,而1=True。

为什么我找不到这方面的文档?@反逻辑,因为这是一个常规选择。基本上只需选择TRUE(1)作为符合条件的行的值。如果有一行,您将得到一个1,如果您的条件导致没有一行,您将不会得到一个具有该值的行。@例如,如果
从b中选择a
为您提供10行
a
,则
从b中选择1
将为您提供10行
1
的值。好的,非常感谢你。我在想这可能是一个保留的词。在实际应用中它在哪里有用?