【问题标题】:mysql: Insert with values from another tablemysql:插入另一个表中的值
【发布时间】:2016-03-27 00:57:09
【问题描述】:

我有 3 张桌子

Player: player_id, player_name

Date: date_id, date_value

PlayerOnDate: pod_id, player_id, date_id

我怎样才能插入类似的东西

INSERT INTO `playerondate`(`player_on_date_id`, `player_id`, `date_date_id`) VALUES (
  NULL,
  SELECT player_id 
    WEHRE player_name LIKE 'aName',
  SELECT date_id 
    WEHRE date_value LIKE '12122015'
)

【问题讨论】:

    标签: mysql sql insert dml


    【解决方案1】:

    该 INSERT INTO ... SELECT 有一个特定的 SQL 语句

    INSERT INTO `playerondate`(`player_on_date_id`, `player_id`, `date_date_id`)
    SELECT NULL, player_id, date_id 
    FROM playerondate
    WHERE player_name = 'aName' AND date_value LIKE '12122015'
    

    【讨论】:

      【解决方案2】:

      您应该使用INSERT ... SELECT 语法: http://dev.mysql.com/doc/refman/5.7/en/insert-select.html

      【讨论】:

        【解决方案3】:

        只需添加一个 FROM

        SELECT player_id FROM Player WHERE player_name = 'aName',
        SELECT date_id FROM `Date` WHERE date_value LIKE '12122015'
        

        【讨论】:

          猜你喜欢
          • 2015-05-28
          • 1970-01-01
          • 1970-01-01
          • 2014-09-02
          • 2023-03-29
          • 2018-05-05
          • 2021-02-04
          • 1970-01-01
          相关资源
          最近更新 更多