0

我有一张这样的桌子:

CREATE TABLE `my_table` (
    `id` INT(10) AUTO_INCREMENT,
    `code` VARCHAR(50),
    `new_table_id` INT(10)
    PRIMARY KEY (`id`)
)

我有一个 CSV 代码值列表,如下所示:

'23000005619',
'23000019479',
'23000019759',
'23000030169',
'23000032629'

我想加入这个列表my_tablecode列,以便我可以找到my_table. new_table_id所以我可以把它加入到另一张桌子上。

我最初的想法是这样的(但显然在语法上不正确):

SELECT *
FROM my_table mt,
(
  SELECT
    '23000005619',
    '23000019479',
    '23000019759',
    '23000030169',
    '23000032629'
) as ml
WHERE mt.`code` = m1.xx

任何帮助将不胜感激。谢谢

更新

我想尽可能避免使用临时表

4

1 回答 1

1

我想我让自己的生活变得更加艰难——这就是我所需要的:

SELECT mt.code, mt.new_table_id
FROM my_table mt
WHERE mt.code IN
(
  '23000005619',
  '23000019479',
  '23000019759',
  '23000030169',
  '23000032629'
)

我可能会说我想要一个加入而实际上不需要加入而让人们失望。

于 2012-10-22T01:45:23.913 回答