0

您好,我正在尝试将组名与特定名称的 uid 匹配

    group_name  sort    date    uid
    friends       0     2011    gname
    family        1     2011    gname1
    following     4     2011    gname2
    acqaintances  3     2011    gname3

我希望无论用户输入什么来创建一个新组,它都不能是默认组。其余组可以与它们具有 unqiue uid 相同,我将这些 uid gname,gname1,gname2,game3 用于全部。有什么帮助吗?我尝试了一个不起作用的查询,因为它显示了结果,即使用户输入了这四个组之外的任何内容

这里是

从 group_name="example" 和 uid='gname' 或 uid='gname1' 或 uid='gname2' 或 uid='gname3' 的组中选择 group_name

4

1 回答 1

1

您需要括号来确保和/或条件得到正确分组:

select group_name from groups where group_name="example" and
  (uid='gname' or uid='gname1' or uid='gname2' or uid='gname3')

在您的原始查询中,and绑定比 更紧密or,因此您最终有效地执行了以下操作:

select group_name from groups where (group_name="example" and uid='gname')
  or uid='gname1' or uid='gname2' or uid='gname3'
于 2012-09-06T20:31:58.580 回答