根据单列中的值选择列
当谈到MySQL时,我是完整的新手。我在这里和其他地方搜索了一些东西,但一直未能找到我认为非常简单的东西。根据单列中的值选择列
我有一个电子邮件程序,从MySQL数据库导入大量电子邮件的字段/列。
我只想为表中特定列中具有特定值的用户导入信息。
要导入我通常会使用所有用户:
SELECT firstname, email FROM users
我曾经尝试这样做修改到:
SELECT firstname, email FROM users WHERE group = "test"
其中group
是列的,我想测试针对的名字,和test
是我正在寻找的价值。我认为这可能是接近的,但它带来了一个错误。
有人能让我直吗?
我认为你的问题是该组是MySQL中的关键字。您可以使用
SELECT firstname, email FROM users WHERE `group` = "test"
使用返回嘀嗒来引用字段名称。
同意;理想情况下,只需使用反引号来限定_all_字段名称。你会让它们在你的查询中更具特色,并避免遇到像这样的错误,其中有些可能在理论上不会导致语法错误。 – 2011-04-20 23:37:09
感谢你们两位的帮助。这工作正常。缺口 – Nick 2011-04-20 23:50:01
那么...你所描述的*应该*工作。你得到的错误是什么?用户表中的列是否是组?它与''test“'具有相同的数据类型(CHAR)吗? – 2011-04-20 23:19:54
下次在您的问题中发布错误消息 – Wes 2011-04-20 23:25:03
小心使用双引号字符串。 ANSI规范使用双引号标识符。 http://dev.mysql.com/doc/refman/5.1/en/server-sql-mode.html#sqlmode_ansi_quotes – RichardTheKiwi 2011-04-20 23:25:56