wuzhiwudao 2017-10-22 17:46 采纳率: 0%
浏览 1300
已结题

sql 数据查询 条件查询

数据库中有一字段存有一字符串,它是一些相关的数据拼接而成的。求以该字段的一部分数据作为条件查询信息
例如:该字段数据为 “XXX 180 红色 ”求180上下范围在150~200之间的记录有多少

  • 写回答

5条回答 默认 最新

  • 向前一丢丢 2017-10-23 01:05
    关注

    这个也不难解决,只要将字段先进行切分,然后用having条件做筛选,就可以做到,请参考如下图文
    //1.创建test1表,表结构及数据如下
    图片说明
    //2.然后通过left函数进行切割,sql语句如下
    SELECT id,LEFT(NAME,7)FROM test1;
    查到的数据就会成为如下所示
    图片说明
    //3.把left函数切割后,再用right进行切割,得到如下结果
    SELECT id,RIGHT(LEFT(NAME,7),3)FROM test1;
    查到的数据就会成为如下所示
    图片说明
    //4.再把查询结果用having进行筛选,就可以得到你想要的范围的数据
    SELECT id,RIGHT(LEFT(NAME,7),3) newname FROM test1 HAVING newname BETWEEN 150 AND 200 ;
    //5.最终结果如下,如果你要结果,请执行下边第一条sql语句,如果只要记录数,执行第二条sql即可
    查询结果:SELECT id,RIGHT(LEFT(NAME,7),3) newname FROM test1 HAVING newname BETWEEN 150 AND 200 ;
    查询记录总数:SELECT COUNT(*) FROM (SELECT id,RIGHT(LEFT(NAME,7),3) newname FROM test1 HAVING newname BETWEEN 150 AND 200)AS test2;
    //查询结果分别如下
    图片说明
    图片说明

    评论

报告相同问题?

悬赏问题

  • ¥15 安卓adb backup备份应用数据失败
  • ¥15 eclipse运行项目时遇到的问题
  • ¥15 关于#c##的问题:最近需要用CAT工具Trados进行一些开发
  • ¥15 南大pa1 小游戏没有界面,并且报了如下错误,尝试过换显卡驱动,但是好像不行
  • ¥15 没有证书,nginx怎么反向代理到只能接受https的公网网站
  • ¥50 成都蓉城足球俱乐部小程序抢票
  • ¥15 yolov7训练自己的数据集
  • ¥15 esp8266与51单片机连接问题(标签-单片机|关键词-串口)(相关搜索:51单片机|单片机|测试代码)
  • ¥15 电力市场出清matlab yalmip kkt 双层优化问题
  • ¥30 ros小车路径规划实现不了,如何解决?(操作系统-ubuntu)