MySql where子句,带<>的变量没有比较

时间:2013-10-25 04:21:37

标签: mysql sql

当我引用where子句时,我看到了代码

where status='locked'
and =person_uuid.p_uuid
and users.p_uuid <> 1
order by full_name,users.p_uuid

我对不熟悉的代码语法感到困惑。

  • 在where子句中有一个名为person_uuid.p_uuid的变量,没有任何比较。
  • users.p_uuid&lt;&gt; 1

我推荐了一些书籍和网站。但没有解决方案。

这是有效的。如果是这样,那是什么意思。

2 个答案:

答案 0 :(得分:1)

在这里,

=person_uuid.p_uuid

//该列应该有值,否则会出错

users.p_uuid <> 1

//暗示users.p_uuid不等于1

答案 1 :(得分:0)

这是完整的查询, 一些RDBMS有一个结构,其中选择的查询选择的vales将直接匹配,

就像你的情况一样

= person_uuid.p_uuid

如果创建了选择查询以从表人中选择person_id,则它将匹配条件

从status ='locked'的人和person.person_id = person_uuid.p_uuid和users.p_uuid&lt;&gt;中选择person_id 1 by full_name,users.p_uuid