select * from aaa where 日期 between '2022-1-1 00:00:00' and '2022-12-31 23:59:59' and (名称1=‘张三’ or 名称2=‘张三’ or 名称3=‘张三’) 搜索到的结果判断一下是名称1、2、3等于张三,再考虑读取评分1、2、3的值。 如果不用between也可以考虑用 日期 like '%2022%' 方法很多
这是谁建的表,也是人才。 select 日期,名称1 as 姓名,评分1 as 评分 into bbb from aaa where 名称1=‘张三’ and 日期 like #2022%# select 日期,名称2 as 姓名,评分2 as 评分 into bbb from aaa where 名称2=‘张三’ and 日期 like #2022%# select 日期,名称3 as 姓名,评分3 as 评分 into bbb from aaa where 名称3=‘张三’ and 日期 like #2022%# select * from bbb orderby 日期
你这数据建的乱啊,字段怎么能有名字一,名字二。还不如建成“名字”,“评分”,“备注”然后在备注写如 1,2,3 等,通过备注,日期,姓名就刷出你想要的数据了 select 日期,名称,评分 from aaa where 名称=‘张三’ and 日期 like #2022%# ,and 备注=1(或者='1')