我有2个sqlite3表: FND 是一个名单及其可能的性别表,即:
nm,gndr <-column names
Aliyah,F
Moses,M
Peter,M
会员是第二张表,即
Fname,Lname <-column names
DAVID X, BAKER
MARY MIA,MCGEE
TINA HEATHER,JOHNSON
JIM PETER TOM, SANTINO
members表在fname列中有第一个和中间名。
我正在尝试编写一个查询来列出Members table fnames列,其中生成的列根据fname列中的第一个单词指示性别。
我尝试了这个,但它没有工作:
select m.fname,(select gndr from FND where upper(nm) like m.fname||'%')as gender
from Members m
任何人都可以更正我的sql语句吗?
答案 0 :(得分:0)
... upper(nm) like m.fname||'%'
让我们看一些示例值:
nm: 'David'
fname: 'DAVID X'
SQL: 'DAVID' LIKE 'DAVID X%'
这显然不匹配。
你必须反转LIKE操作数:
m.fname LIKE nm||'%'