代码之家  ›  专栏  ›  技术社区  ›  streetparade

在mysql中插入/选择不同的值?

  •  2
  • streetparade  · 技术社区  · 14 年前

    我需要在数据库中插入值。

    INSERT INTO tblname(f1,f2,f3)
    SELECT f1,f2,f3 FROM othertbl 
    

    这将正好插入值 F1、F2、F3 其他TBL .

    我想做的是

    为f2插入不同的值。

    在mysql中我如何做到这一点。

    我希望我能把我的问题解释清楚。

    4 回复  |  直到 14 年前
        1
  •  3
  •   Quassnoi    14 年前
    INSERT
    INTO    tblname(f1,f2,f3)
    SELECT  f1, othervalue, f3
    FROM    othertbl 
    
        2
  •  2
  •   Anthony    14 年前

    这真的取决于 不同的 价值是…

    如果要插入某些已知常量,可以使用:

    INSERT INTO tblname(f1,f2,f3)
    SELECT f1,"foo",f3 FROM othertbl 
    

    如果要在 f2 但是双重的,你可以使用:

    INSERT INTO tblname(f1,f2,f3)
    SELECT f1,f2*2,f3 FROM othertbl 
    

    如果要插入 f1 f3 ,您可以使用:

    INSERT INTO tblname(f1,f2,f3)
    SELECT f1,f1+f3,f3 FROM othertbl 
    

    但我知道这些可能是做数学的错误函数,所以我必须寻找正确的方法使我的例子工作,但这个想法应该是清楚的。

        3
  •  0
  •   Babar    14 年前
    INSERT INTO tblname(f1,f2,f3)
    SELECT f1,f2,f3 FROM othertbl 
    
        4
  •  0
  •   nik    14 年前

    你可以使用mysql a/c ur需要的字符串或数学函数

    你可以在这里找到他们

    http://dev.mysql.com/doc/refman/5.1/en/string-functions.html

    http://dev.mysql.com/doc/refman/5.1/en/non-typed-operators.html