我正在尝试从电子邮件地址获取密码,但问题是选择查询不会读取电子邮件列中点后面的值并返回空结果。我已经尝试了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'