• 请不要在回答技术问题时复制粘贴 AI 生成的内容
Rush9999
V2EX  ›  程序员

后端程序员可以不会写 SQL 语句吗?

  •  
  •   Rush9999 · Mar 26, 2019 · 22206 views
    This topic created in 2780 days ago, the information mentioned may be changed or developed.
    我司进了两个后端,只会写 select * from ,其余复杂语句完全不会写,连 desc 都不知道是干什么的,排序倒叙就写负号
    Supplement 1  ·  Mar 26, 2019
    这种情况,我要和领导说吗?要怎么婉转的告诉领导?当前的业务的确不需要复杂业务逻辑,他们所有表,需要关联的全都加外键了,orm 现在的确够用,就连用户操作日志都关联了外键,而且还做了冗余,好多表设计看的莫名其妙。。。看着就糟心。。。
    185 replies  •  2019-03-29 10:22:10 +08:00
    1  2  
    ❮ ❯
    daiqiangbudainiu
    daiqiangbudainiu
    Mar 26, 2019
    1
    这么初级的吗?
    Rush9999
    Rush9999
    OP
    Mar 26, 2019
    2
    @warcraft1236 也不知道面试怎么进来的,说只会用 orm
    leisurelylicht
    leisurelylicht
    Mar 26, 2019 via iPhone
    3
    平时都用 orm 的吧
    cnoder
    cnoder
    Mar 26, 2019
    4
    不会可以学(`・ω・´)
    F281M6Dh8DXpD1g2
    F281M6Dh8DXpD1g2
    Mar 26, 2019 via iPhone
    5
    一般不都不会么...
    welkinzh
    welkinzh
    Mar 26, 2019
    6
    orm 用多了,还好吧
    darknoll
    darknoll
    Mar 26, 2019
    7
    除了这个,这俩还有啥特征?
    jxf2008
    jxf2008
    Mar 26, 2019
    8
    我是做 C++的,现在在一家医疗器械公司做彩超的操作软件
    现在 SQL 语句也是会 SELECT xxx FROM xxx。
    数据库只用 Sqlite3.
    术业有专攻,反正目前对数据库这块我用到的很初级。
    Latin
    Latin
    Mar 26, 2019❤️2
    9
    都会了没啥用,那还要 DBA 干嘛,头顶已经很稀薄了。就不要强人所难了
    Rush9999
    Rush9999
    OP
    Mar 26, 2019
    10
    @darknoll 数据库有三个字段 a,b,c 关系是 a+b=c ,a,b 两个字段是常用更新的,我问为什么要加 c 字段,他告诉我,c 字段要排序,orm 不会写,所以就填上了。
    VoidChen
    VoidChen
    Mar 26, 2019❤️6
    11
    不会吧。。。我以为 sql 是标配技能哦。。。
    qq976739120
    qq976739120
    Mar 26, 2019
    12
    我也是...不用 orm 就是个废物,不知道那些熟练用 sql 的是怎么做到大,平时的业务 orm 就可以做到的啊,复杂的 sql 也是 dba 提供的...
    fsafdasfsdafsd
    fsafdasfsdafsd
    Mar 26, 2019❤️1
    13
    sql 语句基本的就 10 来个知识点而已。
    看一遍,写写自然就会了。
    又不是算法或者数据结构,sql 还算得上技能?
    2kCS5c0b0ITXE5k2
    2kCS5c0b0ITXE5k2
    Mar 26, 2019❤️5
    14
    你司还招人吗,
    zhiguang
    zhiguang
    Mar 26, 2019
    15
    业务开发就要,搞技术中间件啥的应该可以不用
    allanzhuo
    allanzhuo
    Mar 26, 2019 via Android❤️1
    16
    刚培训的嘛,我不信哪个后端不会写 sql 的
    lusi1990
    lusi1990
    Mar 26, 2019
    17
    不可以
    levon
    levon
    Mar 26, 2019
    18
    有用临时看下就会了
    ifxo
    ifxo
    Mar 26, 2019
    19
    可以啊,不过国内公司都是想招一个全能的
    Fitz
    Fitz
    Mar 26, 2019❤️14
    20
    没听说过负号, 孤陋寡闻了....
    orangeade
    orangeade
    Mar 26, 2019 via Android
    21
    业务开发不懂 sql,小心搞挂数据库
    duoglas
    duoglas
    Mar 26, 2019
    22
    不行
    saulshao
    saulshao
    Mar 26, 2019
    23
    后端程序员不会写 SQL 应该是不行的,不过 SQL 简单,读一下文档基本就会了。
    4DAX07B8Kle4Dm6T
    4DAX07B8Kle4Dm6T
    Mar 26, 2019 via iPhone
    24
    基本的一些 sql 肯定要会的,desc 和 asc 都不知道就有点过分了
    jy02201949
    jy02201949
    Mar 26, 2019
    25
    简单的应该会吧,要不出问题怎么查
    AlisaDestiny
    AlisaDestiny
    Mar 26, 2019
    26
    如果是实习的话可以适当放宽。
    DamonLin
    DamonLin
    Mar 26, 2019
    27
    可以不会写,但是要懂这段 sql 大概的意思把,即使不会也要仿着写,慢慢锻炼自己。
    aimaodeyuer
    aimaodeyuer
    Mar 26, 2019
    28
    哈?难道不是应该会写 sql 吗。不要求存储过程啥的,起码的几种 join、索引、函数得知道吗?难道现在后端只要写逻辑,sql 抛给 dba 就行了?
    annielong
    annielong
    Mar 26, 2019
    29
    看业务吧,内容管理类的只用增删修,orm 足够了,有些复杂的业务甚至得上过程函数才有行
    jswh
    jswh
    Mar 26, 2019
    30
    负责的 sql 确实不会写,从来没用过存储过程
    jswh
    jswh
    Mar 26, 2019
    31
    @jswh 复杂
    rb6221
    rb6221
    Mar 26, 2019
    32
    传说中的 CRUD 工程师
    不是,好像 CRUD 都没全
    CFO
    CFO
    Mar 26, 2019 via Android
    33
    我写了三年后端 水平还停留在刚入门第一周时学会的 join 上 也够用 遇到难的就搜搜改改
    说到底 常用的一周怎么着也该学会了吧
    rr41ns
    rr41ns
    Mar 26, 2019
    34
    羡慕,啥公司啊?
    想进
    th00000
    th00000
    Mar 26, 2019
    35
    我觉得看行业经历吧.......
    来游戏行业试试? sql 语句也用不到。
    Dogergo
    Dogergo
    Mar 26, 2019
    36
    SQL 是后端工程师的必备技能吧。
    skd918
    skd918
    Mar 26, 2019 via Android❤️2
    37
    我会写 SQL,不会 ORM 🤣
    bccoder
    bccoder
    Mar 26, 2019 via Android
    38
    不行,我 Android 都会点简单的
    onepunch
    onepunch
    Mar 26, 2019
    39
    不会写 sql,调优就更不会了 。估计会挖很多坑🤣
    fsafdasfsdafsd
    fsafdasfsdafsd
    Mar 26, 2019
    40
    1.
    http://www.runoob.com/sql/sql-tutorial.html
    请让你同事看 2 个小时

    2.
    “用户操作日志都关联了外键,而且还做了冗余,好多表设计看的莫名其妙。。。看着就糟心。。。”
    我始终没看懂哪里有问题?
    guyeu
    guyeu
    Mar 26, 2019
    41
    emmm 这个都有鄙视链了吗,越来越多的公司用 NoSQL,我是不是也应该问一下后端程序员为啥不会写 JavaScript。。。
    贵司用 MySQL 是不是还要要求一下所有后端都要会 MySQL 方言。。
    blackjar
    blackjar
    Mar 26, 2019
    42
    冗余有时可以提升查询效率 建议不要一棍子打死
    ARhen
    ARhen
    Mar 26, 2019
    43
    连 desc 都不知道是干什么的??? 只会写 select ??
    一句 sql 不会也算正常,但是会 select,不晓得 desc ?
    asuka02
    asuka02
    Mar 26, 2019 via iPhone
    44
    @guyeu 我司后端人人都是兼职前端
    guyeu
    guyeu
    Mar 26, 2019
    45
    @asuka02 #44 优秀的公司才有这么优秀的员工,佩服佩服
    Rush9999
    Rush9999
    OP
    Mar 26, 2019 via iPhone
    46
    @ARhen 我让他倒序查一下 他就在前面加了个负号 然后给我看结果集 我说怎么不用 desc 他说以前没用过
    asuka02
    asuka02
    Mar 26, 2019 via iPhone
    47
    @guyeu 不是不是,我司在二线城市领导招人基本上都是五年以上的,所以年纪比较大平均年龄 31,做后端的那个年代都是前后端一条龙
    sheeta
    sheeta
    Mar 26, 2019
    48
    还缺人吗
    sampeng
    sampeng
    Mar 26, 2019
    49
    sql 居然算技能?
    简历上写熟练 sql 的都是直接默认扣 10 分的。。。
    viWww0vvxmolvY5p
    viWww0vvxmolvY5p
    Mar 26, 2019 via Android
    50
    必须得还,最好还懂得多种数据库 sql 的区别
    ala2008
    ala2008
    Mar 27, 2019
    51
    orm 就不写 sql 了么。。
    fcoolish
    fcoolish
    Mar 27, 2019
    52
    他们两工资有 7K 吗
    zkeeper
    zkeeper
    Mar 27, 2019
    53
    可以记不住具体关键字, 用的时候翻手册没关系. 但你说的这种情况过分了, 这是连数据库基本概念都不全的那种.

    我对自己(以及合格工程师)的要求是: 对某个方向(比如线程安全, 数据库), 必须知道主要概念, 大概明白有哪些坑需要回避. 但是具体的 API 等可以在需要用到的时候查, 甚至现学都没关系, 只要你学得够快.
    gps949
    gps949
    Mar 27, 2019 via Android
    54
    不会就学不就行了?
    我觉得人的(理科)聪明才智包含三方面:逻辑思维能力、知识、经验。
    逻辑思维能力需要系统花时间气力和方法培养,知识学就是了,经验则时间相关。
    做重复劳动的后两点比较重要,做的工作创造性越强的则越看中第一点。第一点强则可举一反三,原本什么也不会,第一天学了一点第二天就会三点了,第一点弱的话可能本来会一点,结果到第三天还是只会那一点。
    kobe6666
    kobe6666
    Mar 27, 2019
    55
    基础的 curd,排序,索引这些知识都是必备的
    yuikns
    yuikns
    Mar 27, 2019
    56
    @jxf2008 c++ 通用代码 leveldb/rocksdb 值得了解一下。
    zhangsen1992
    zhangsen1992
    Mar 27, 2019
    57
    curd 都不会了,人人都是程序员~
    sugars
    sugars
    Mar 27, 2019
    58
    我一个前端都会一些 sql 了,你说呢
    allgy
    allgy
    Mar 27, 2019
    59
    不会写 sql,复杂的业务靠 ORM 实现不了
    iamjs
    iamjs
    Mar 27, 2019
    60
    @sampeng 招产品经理的话 加这句 怒加 20 分。。。
    axbx
    axbx
    Mar 27, 2019
    61
    用 mongo 这种非关系型数据库可以不用 sql,但是会还是要会,没办法保证以后都不用
    pkoukk
    pkoukk
    Mar 27, 2019
    62
    我找第一份工作的时候也只会 select ....但是我学会日常用的那些东西没超过两小时....
    我觉得没什么
    nicebird
    nicebird
    Mar 27, 2019
    63
    sql 我也不太记得。
    看业务领域,有些领域喜欢用非关系数据库或者 orm 够用,就不是很熟练。
    另外 sql 本身就是查查手册就行了,sql 必知必会也没几页吧。
    yoshiyuki
    yoshiyuki
    Mar 27, 2019
    64
    说明你们公司面试就不考察 SQL
    不考察 SQL 说明你们领导就不在意 SQL
    你还打算去说啥
    keysona
    keysona
    Mar 27, 2019
    65
    我自己也是做后端开发。

    一般情况用 orm 就够了,就是特殊情况需要手写 sql,这时我通常都忘了,需要花个 10 几分钟复习下。当然,增删改这种是没问题的,有问题是的修改表的结构这种不常用的,这时我都忘记怎么写了。

    我的看法是,允许你不会,需要用到的时候迅速搞出来就行了。和正则表达式一样。每次我要写正则,都要花个几分钟看看正则的例子...毕竟不常用。
    5oiR5piv5YK76YC8
    5oiR5piv5YK76YC8
    Mar 27, 2019
    66
    直接撸,简单的可以,复杂的查一查,desc 不知道就夸张了
    wind3110991
    wind3110991
    Mar 27, 2019
    67
    作为后端开发,别说常用 CRUD SQL,
    explain、慢查询优化、死锁分析、数据引擎、索引原理和优化、包括事务的隔离性等等,这些都是标配技能
    xuanbg
    xuanbg
    Mar 27, 2019
    68
    后端不会写 SQL 现在还是比较普遍的。。。

    所以经常会有程序员年龄大了找不到工作的问题,该学习的不学习,找不到工作才是正常的好吗。
    unco020511
    unco020511
    Mar 27, 2019
    69
    给多少钱干多少事
    tt67wq
    tt67wq
    Mar 27, 2019
    70
    学个一上午不就会了
    no1xsyzy
    no1xsyzy
    Mar 27, 2019
    71
    怎么说呢,会写 list comprehension 就会写 SQL,这两个其实描述的都是数学公式
    ` $$ \left\{ x \middle| x \in N \wedge x = 1 \left(\mod 2\right) \right\} $$ `{.latex}
    ` [ x for x in count() if x % 2 == 1 ] `{.python}
    ` SELECT numbers AS x FROM NaturalNumbers WHERE x % 2 = 1 `{.sql}
    hayi
    hayi
    Mar 27, 2019
    72
    弱弱的问一句 你们说的 orm 是什么
    romisanic
    romisanic
    Mar 27, 2019
    73
    sql 都不会,那估计对数据库相关的知识就更没什么了解了。
    还算什么后端?
    Azmaveth
    Azmaveth
    Mar 27, 2019
    74
    怎么感觉比我还弱呢~~~~~~~~~~
    lastpass
    lastpass
    Mar 27, 2019
    75
    自从集成了通用 mapper 之后,就好久没有写过 sql 了。
    \(//∇//)\
    zhangqilin
    zhangqilin
    Mar 27, 2019
    76
    前两天来面试的
    问怎么删除一条数据
    drop table
    说实话
    感觉后端不会写 sql 的可以统一认为是培训班出来的了
    hafuhafu
    hafuhafu
    Mar 27, 2019
    77
    这串让我自信了起来..
    yc8332
    yc8332
    Mar 27, 2019
    78
    这。。怎么招进来。。你们面试也太水了吧
    ecoyrage
    ecoyrage
    Mar 27, 2019
    79
    @zhangqilin
    drop table 也太强了吧哈哈哈哈哈哈哈哈或哈哈哈哈或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或或
    Sparklingredstar
    Sparklingredstar
    Mar 27, 2019
    80
    desc 也不知道也太夸张了
    zhang1215
    zhang1215
    Mar 27, 2019
    81
    学一遍就记住的东西
    CtrlSpace
    CtrlSpace
    Mar 27, 2019❤️3
    82
    后端面试不是要问到数据库知识的吗?

    不是从数据页结构、日志系统、B+树索引,到事务隔离、锁和性能优化吗?
    不是主备、主从、高可用吗?

    SQL 语句根本不屑于问吧。。。这都不会真的说不过去
    vinsony
    vinsony
    Mar 27, 2019❤️1
    83
    好牛逼,我都不知道用负号。。。
    weiliangweiliang
    weiliangweiliang
    Mar 27, 2019
    84
    后端不会 sql 有点过分了吧,都是培训出来的?
    LinInV2
    LinInV2
    Mar 27, 2019
    85
    @CtrlSpace
    我也是这么要求自己的.....前段时间恶补了这些知识
    wongy
    wongy
    Mar 27, 2019
    86
    我目前写的代码 都是用 ORM 框架 CRUD 的 sql 语句 恐怕只有面试的时候会了解一下了
    如果操作数据 都是用可视化软件
    arseBurger
    arseBurger
    Mar 27, 2019
    87
    基本的 crud 要会把
    orangeade
    orangeade
    Mar 27, 2019 via Android
    88
    @guyeu
    这叫鄙视链?笑
    看各大公司招聘 jd 不就知道了,web 开发谁敢找个不懂 SQL 和数据库原理的,给自己埋地雷
    HuHui
    HuHui
    Mar 27, 2019
    89
    建议辞退
    silentstorm
    silentstorm
    Mar 27, 2019
    90
    @zhangqilin
    感觉你要招一颗定时炸弹进来,哈哈哈
    silentstorm
    silentstorm
    Mar 27, 2019
    91
    有时候客户生产环境只能 SSH 连接,出 BUG 时候检查 DB 还是需要手写 SQL 的。复杂的一时想不起来很正常,DESC 不知道就有点儿说不过去了。
    bruce00
    bruce00
    Mar 27, 2019 via iPhone
    92
    公司:至少跑路的时候不会删库
    RookieXie
    RookieXie
    Mar 27, 2019
    93
    昨天面了个说是三年工作经验的 然而连 orm 不知道是什么
    tabris17
    tabris17
    Mar 27, 2019
    94
    别把任何架构性质的任务交给他们,否则你擦屁股擦死
    Yiki
    Yiki
    Mar 27, 2019
    95
    这样也能进吗- -
    难道后端不需要写 sql 吗
    难道我前端写多了
    时代变了????
    glaucus
    glaucus
    Mar 27, 2019 via iPhone
    96
    1. 怎么通过面试的?
    2. 贵司还招人吗?
    zwfengwu
    zwfengwu
    Mar 27, 2019
    97
    只是个单词啊 知道又怎么样, 一般都是经常用,可能不知道怎么称谓而已吧
    cdlixucd
    cdlixucd
    Mar 27, 2019
    98
    @fcoolish 正常啊,我司两程序员,一年一个二次开发项目,月薪税后 7k 多的 9k😄是不是老板是傻逼
    Rush9999
    Rush9999
    OP
    Mar 27, 2019
    99
    @tabris17 已经在擦屁股了,要不我才不会管这些东西合不合理,今天看见数据库有一个表,里面有四个字段,表达一个东西,一个字段用 1,2,3,4 都能表示,我现在就是视而不见,服务能跑就跑吧,代码全是重复的,我也懒得删了,我跟测试说,出问题了,谁写的找谁,别找我
    dremy
    dremy
    Mar 27, 2019 via iPhone❤️1
    100
    楼上这么多说后端不会写 SQL 都合格的,真让人怀疑 V 站的平均技术水平
    1  2  
    ❮ ❯
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1691 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 261ms · UTC 23:56 · PVG 07:56 · LAX 15:56 · JFK 18:56
    ♥ Do have faith in what you're doing.