SQL应该用括号括起来

时间:2018-06-20 16:26:57

标签: sql

任何人都可以查看我的代码,我不断收到以下错误消息

  1. 期望有一个开括号。 (在位置43的“ AS”附近)
  2. 期望至少有一个列定义。 (在位置42处的“”附近)
  3. 意外的令牌。 (位置695处“)附近”)

但是,我确实使用了开口支架,并在最后将其关闭。我看不到Atom的任何语法错误

CREATE TABLE marketin_testDatabase.results AS (
    SELECT
        /*begin of the variable list for log_link_visit_action*/
          llva.`idlink_va`,
          llva.`idsite`,
          llva.`idvisitor`,
          llva.`idvisit`,
        /*end of the variable list for log_link_visit_action*/
        /*begin of the variable list for log_visit*/
          -- lv.`idvisit`, -- duplicate column name
          lv.`idsite`,
          lv.`idvisitor`,
          lv.`last_idlink_va` -- remember to delete the last comma
        /*end of the variable list for log_visit*/
        FROM marketin_yolopiwik.matomo_log_link_visit_action llva -- create alias for the long table name
        LEFT OUTER JOIN marketin_yolopiwik.matomo_log_visit lv
    ON lv.idvisit =
    llva.idvisit
);

1 个答案:

答案 0 :(得分:0)

使用CREATE TABLE语法时,需要在圆括号中指定所有列和数据类型,这就是为什么要用括号括起来的原因。您可以使用SELECT INTO语句:

SELECT
      llva.`idlink_va`,
      llva.`idsite`,
      llva.`idvisitor`,
      llva.`idvisit`,
      -- lv.`idvisit`,
      lv.`idsite`,
      lv.`idvisitor`,
      lv.`last_idlink_va`
INTO marketin_testDatabase.results
FROM marketin_yolopiwik.matomo_log_link_visit_action llva 
LEFT OUTER JOIN marketin_yolopiwik.matomo_log_visit lv
ON lv.idvisit = llva.idvisit

marketin_testDatabase.results是否已经存在?如果是,您要添加还是重写它?