› 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
ooee2016
V2EX  ›  MySQL

请教个 SqlServer 筛选查询结果的 SQL

  •  
  •   ooee2016 · Jul 16, 2022 · 1661 views
    This topic created in 1531 days ago, the information mentioned may be changed or developed.
    • 用的 SqlServer 数据库
    • 请问怎么从结果中过滤掉 用户 ID = 260 / 722 / 823 这种,商品 ID 种类小于 3 个 的呢?谢谢!!
    SELECT 
    	uid AS '用户 ID', 
    	(CASE sid
    		WHEN 10001 THEN 'A'
    		WHEN 10002 THEN 'B'
    		WHEN 10003 THEN 'C'
    		WHEN 10004 THEN 'D'
    	END) AS '商品 ID', 
    	COUNT(*) AS '数量'
    FROM MyTable 
    WHERE sid IN (10001, 10002, 10003, 10004) 
    GROUP BY uid, sid 
    ORDER BY uid, sid
    

    查询结果

    用户 ID 商品 ID 数量
    4 A 102
    4 B 5
    4 C 57
    4 D 227
    5 A 1
    5 C 1
    5 D 1
    7 A 10
    7 B 1
    7 C 11
    7 D 1
    105 A 7
    105 B 1
    105 C 1
    105 D 2
    142 A 1
    142 B 1
    142 C 1
    260 C 10
    437 A 9
    437 B 1
    437 C 1
    437 D 2
    722 A 1
    823 A 2
    chenxytw
        1
    chenxytw  
       Jul 16, 2022
    虽然你发错节点了,但我想你要找的应该是类型 group having 这个语句,用作聚合结果的筛选。不过 SQLServer 里面叫啥自己搜吧。
    ooee2016
        2
    ooee2016  
    OP
       Jul 16, 2022
    @chenxytw #1 谢谢,首页没看到有 SQL Server ,刚点开全部节点找到了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2633 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 03:33 · PVG 11:33 · LAX 20:33 · JFK 23:33
    ♥ Do have faith in what you're doing.