求 3 条 mysql 的查询语句 - V2EX
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
mamahaha
V2EX    MySQL

求 3 条 mysql 的查询语句

  •  
  •   mamahaha 2019-01-27 08:01:37 +08:00 4423 次点击
    这是一个创建于 2524 天前的主题,其中的信息可能已经有所发展或是发生改变。
    utab1=子用户表 1,id(用户 id),name(作者名),pwd
    utab2=子用户表 2,id(用户 id),name(作者名),pwd
    posts=文章表,id(文章 id),u_id(用户 id),title,content
    语句 1:向用子户表内添加新用户,当 utab1 的 id>1000 时,新用户存入 utab2,并且 utab2 的初始 id 为 1001
    语句 2:查询 posts 表内 id=1 的文章的作者名
    语句 3:查询 id=1002 的用户的所有文章
    请教一下这样的情况如何查询啊,还有不确定是不是需要做一个用户总表来进行调度。
    12 条回复    2019-01-28 10:56:18 +08:00
    mamahaha
        1
    mamahaha  
    OP
       2019-01-27 08:14:44 +08:00
    语句 2 改为查询 posts 表内 id=1,u_id=1001 的文章的作者名
    d3vil
        2
    d3vil  
       2019-01-27 08:16:00 +08:00 via iPhone   1
    语句 1 要用触发器?或者设置表一的某种初始参数?不懂,不会没遇过相似情景。
    2:(select u.name from utab1 u left join posts p on u.id = p.u_id) union all (select u.name from utab2 u left join posts p on u.id = p.u_id)
    3:select p.title from utab2 u left join posts p on u.id = p.u_id where u.id = 1002
    d3vil
        3
    d3vil  
       2019-01-27 08:17:30 +08:00 via iPhone   1
    @mamahaha 你这个改的莫名其妙阿,你都有 uid 了,你直接查用户表不就行了吗?
    mamahaha
        4
    mamahaha  
    OP
       2019-01-27 08:22:41 +08:00   1
    @d3vil 谢谢回答啊,目前我思维有点混乱啊
    d3vil
        5
    d3vil  
       2019-01-27 08:23:37 +08:00 via iPhone   1
    @mamahaha 看出来了
    shakoon
        6
    shakoon  
       2019-01-27 11:17:02 +08:00 via Android   1
    建一个视图,把分表 union all 起来,查询时就查这个视图
    mamahaha
        7
    mamahaha  
    OP
       2019-01-27 11:53:16 +08:00
    @shakoon 请收下我的感谢
    mamahaha
        8
    mamahaha  
    OP
       2019-01-27 11:57:39 +08:00
    @shakoon 分开表存是为了提高查询效率,不知道 union all 会不会影响效率
    d3vil
        9
    d3vil  
       2019-01-27 12:07:37 +08:00 via iPhone   1
    @mamahaha
    sql server 必须把视图查询转化成对基本表的查询,如果这个视图是由一个复杂的多表查询所定义,那么,即使是视图的一个简单查询,sql server 也要把它变成一个复杂的结合体,需要花费一定的时间。
    要么写存储过程,要么用我的 sql 直接查,你看重性能,就少用视图
    Linxing
        10
    Linxing  
       2019-01-27 14:15:15 +08:00
    歪个楼 UNION ALL 的情况 是在查询的时候做 还是 SELECT 两个结果出来 在语言的层面做处理 性能上有差别吗
    CRVV
        11
    CRVV  
       2019-01-28 09:06:59 +08:00 via Android
    如果连 3 都不过写,这活就别干了,从头学一下 SQL 再说

    如果要分表,也不是 1000 行就分的,你说 1000 万行分一个表好像还可以接受

    直接搞两个表完事,肯定比你这么折腾出来的快
    mamahaha
        12
    mamahaha  
    OP
       2019-01-28 10:56:18 +08:00
    @CRVV 本来这个就是在靠做程序学 sql,举例子说 1000 行和说 1000 万行性质有区别吗?啥叫从头学?你这理解能力根本就没看出来为啥要分表吧?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3968 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 05:15 PVG 13:15 LAX 21:15 JFK 00:15
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86