选择查询来检索表中特定行的主键值

发布于 2024-11-26 09:43:54 字数 276 浏览 2 评论 0原文

我正在努力检索表的主键值。我们使用的是 MS SQL Server 2005。该数据库是其他人多年前设计的(他根本没有遵循规范化规则)。他使用Key(这是sql server中的关键字)作为表主键的列名。所以我不能使用这样的查询:select key from table_name where column2 = ?

任何人都可以帮助编写一个查询来获取特定行的主键值,如下所示:select tbale_name 中的primary_key 其中column2 = ?

I am struggling to retrieve the value of primary key for a table. We are using MS SQL Server 2005. The database was designed years back by somebody else (he didn't follow the normalization rules at all). He used Key (which is a keyword in sql server) as the column name for primary key of a table. So I cannot use query like this: select key from table_name where column2 = ?

Could anyone help to write a query to get the value of the primary key for a specific row something like this: select primary_key from tbale_name where column2 = ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

爱*していゐ 2024-12-03 09:43:54

是的,您可以,只需将列名称括在反引号中:

select `key` from `table_name` where `column2` = ?

或者,根据您的数据库,您可以使用方括号:

select table_name.[key] from table_name where table_name.[column2] = ?

编辑:我看到您说“MS SQL”。我认为可以使用方括号。 MySQL 接受反引号语法。

Yes you can, simply wrap column names in backticks:

select `key` from `table_name` where `column2` = ?

Alternatively, depending on your DB, you might use square brackets:

select table_name.[key] from table_name where table_name.[column2] = ?

Edit: I see you said "MS SQL". I think that one works with the square brackets. MySQL accepts the backtick syntax.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文