SQL Server中的Select语句在where中使用电子邮件获取值时返回null;无法使用带有点的值使用select获取数据
我试图从电子邮件地址获取密码,但问题是选择查询不会读取电子邮件列中点后的值,并返回空结果。我尝试了SQL Server中的Select语句在where中使用电子邮件获取值时返回null;无法使用带有点的值使用select获取数据,sql,sql-server,database,select,backend,Sql,Sql Server,Database,Select,Backend,我试图从电子邮件地址获取密码,但问题是选择查询不会读取电子邮件列中点后的值,并返回空结果。我尝试了PARSENAME()和RIGHT()函数让它读取完整的电子邮件地址。但是那里没有运气。我把我的查询语句放在下面 select Password from Faculty where Email = 'john.carson@outlook.com' 我没有得到属于该电子邮件地址的密码,而是得到了空密码。数据类型为电子邮件,密码字段为nvarchar(100)。有5条记录有不同的电子邮件,其中
PARSENAME()
和RIGHT()
函数让它读取完整的电子邮件地址。但是那里没有运气。我把我的查询语句放在下面
select Password
from Faculty
where Email = 'john.carson@outlook.com'
我没有得到属于该电子邮件地址的密码,而是得到了空密码。数据类型为电子邮件,密码字段为
nvarchar(100)
。有5条记录有不同的电子邮件,其中一条是这封。我确信问题的出现是因为这些点,因为我试着在电子邮件中使用虚拟数据johncarson@com我得到了相应的密码。我正在使用SQL Server作为我的数据库引擎。我希望它能正常工作
select Password
from Faculty
where Email like 'john.carson@outlook.com'
我用虚拟数据进行了检查,但它正在工作。请用Like子句进行检查。电子邮件字段中可能存在任何空格
Declare @Faculty Table (Email Varchar(300),Password varchar(20))
Insert into @Faculty VALUES ('john.carson@outlook.com','123'),('john1.carson@outlook.com','12335'),('john2.carson@outlook.com','12356')
select Password
from @Faculty
where Email = 'john.carson@outlook.com'
如果您向我们显示的查询真的返回空集,则表示没有记录包含该电子邮件。电子邮件列的数据类型是什么?如果您可以使用上面提到的电子邮件显示教员表的样本数据,这将有所帮助-如您所见,查询工作正常。你的数据肯定还有其他问题。应该是你的数据。尝试
where电子邮件,如“john%”
。检查电子邮件
列中是否有复制并粘贴的不可打印字符。但仍然没有在哪里。不过还是谢谢你。不,没有空位了。我不知道这对你有什么作用,尽管我试着使用like子句,但什么都没有。请检查一下像“%john”这样的where电子邮件。carson@outlook.com%'请确保此电子邮件存在。