1

假设我想检查一些是否string显示为name-surname在两行namesurname一个table. 如何以 rails 样式编写有效的这个 sql?这些语法是否正确?

SELECT (name + '-'+ surname) FROM table1 where (name + '-'+ surname = string)


table.select(:name+'-'+:surname).where((:name+'-'+:surname) == string)
4

1 回答 1

2

我不确定我是否正确理解了您的问题,但我认为这就是您想要的。对于以下字符串变量,

string = "John - Doe"

你想从用户表中提取这样的记录

编号 | 姓名 | 姓

1 | 约翰 | 能源部

如果这是您想要的,您实际上可以像这样按摩您的字符串变量

parsed_string = string.split('-')
name = parsed_string[0].strip # strip to remove white spaces
sur_name = parse_string[1].strip

然后,您可以运行以下代码来获得所需的内容:

users = User.where(:name => name, :surname => sur_name) 

希望这能回答你的问题。

于 2013-08-09T15:39:34.433 回答