V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
HaoC12
V2EX  ›  MySQL

SQL:一个表有上千个字段为 1 或 0,查询表里每行字段值为 1 的字段等于 300 的字段。

  •  
  •   HaoC12 ·
    itcuihao · 2018-07-23 20:20:50 +08:00 · 4923 次点击
    这是一个创建于 2311 天前的主题,其中的信息可能已经有所发展或是发生改变。

    如题:写一个 SQL.

    一个表有上千个字段为 1 或 0,查询表里每行字段值为 1 的字段等于 300 的字段。
    
    第 1 条附言  ·  2018-07-24 15:20:05 +08:00
    如下

    table:test

    ```
    id|A|B|C|D
    --|--|--|--|--
    1|0|1|1|1
    2|0|1|1|0
    3|0|0|0|1
    4|0|0|1|1
    5|0|1|0|1
    6|0|1|1|0
    ```

    查询 test 表中,一行中有“两列”字段值为 1 的数据的 id
    12 条回复    2018-11-23 22:35:31 +08:00
    kslr
        1
    kslr  
       2018-07-23 21:09:07 +08:00 via Android
    作业自己做哦
    Mistwave
        2
    Mistwave  
       2018-07-23 21:09:50 +08:00 via iPhone
    select * from your_table as yt
    inner join
    ( select id as id, col1+col2+...+col1000 as s
    from your_table ) as t
    on yt.id = t.id
    and t.s = 300

    手机渣排版 见谅
    srx1982
        3
    srx1982  
       2018-07-24 10:32:14 +08:00
    说实话,根本没看懂题。。
    bpllzbh
        4
    bpllzbh  
       2018-07-24 11:02:41 +08:00
    抱着抱着抱着小鲤鱼的我的我的我也没看懂
    HaoC12
        6
    HaoC12  
    OP
       2018-07-24 15:13:59 +08:00
    @srx1982 #3

    @bpllzbh #4

    假设一个表里有 1000 个字段,这些每个字段的值呢,非 0 即 1,查询一行中字段值为 1 的字段个数是 300 个的行。
    HaoC12
        7
    HaoC12  
    OP
       2018-07-24 15:15:32 +08:00
    @twor #5 不是这个意思吧。
    HaoC12
        8
    HaoC12  
    OP
       2018-07-24 15:21:03 +08:00
    @Mistwave 确定要手写 1000 个字段吗?
    HaoC12
        9
    HaoC12  
    OP
       2018-07-24 15:21:47 +08:00
    @kslr 哈哈,不把 1000 个字段名写出来啊,这样不知道有没有的做。
    CEBBCAT
        10
    CEBBCAT  
       2018-08-05 03:34:29 +08:00 via Android
    请问最后解决了吗?
    HaoC12
        11
    HaoC12  
    OP
       2018-08-07 23:58:02 +08:00
    @CEBBCAT 类似 2 楼的写法,只能把字段写满了,没想到其他好方式。
    xyjincan
        12
    xyjincan  
       2018-11-23 22:35:31 +08:00 via Android
    大哥你这表不合适呀,
    换成二维的吧
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2681 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 15:36 · PVG 23:36 · LAX 07:36 · JFK 10:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.