我有一个索引字段和一个子索引字段,我需要连接以获得一个id。SQL Concat和intvalue
我不能只是CONCAT两个领域,因为这样它可以给双值...
说我得到了指数18和子索引8它将给我188,并且也将指数1 togheter与分类指数88给我。
因为我想要在值为1-9的子索引字段中添加0。
有人可以帮我用这个语法。语言是MySQL和两个表中有一个整型值..
分类指数之前,我要加一个0,如果值是1-9,CONCAT (
指数,
分类指数) AS
IndexID为
我有一个索引字段和一个子索引字段,我需要连接以获得一个id。SQL Concat和intvalue
我不能只是CONCAT两个领域,因为这样它可以给双值...
说我得到了指数18和子索引8它将给我188,并且也将指数1 togheter与分类指数88给我。
因为我想要在值为1-9的子索引字段中添加0。
有人可以帮我用这个语法。语言是MySQL和两个表中有一个整型值..
分类指数之前,我要加一个0,如果值是1-9,CONCAT (
指数,
分类指数) AS
IndexID为
您可以用例CONCAT为组合下面。
SELECT
`INDEX`,`SUB_INDEX`,
(
CONCAT
((CASE WHEN `INDEX` <10
THEN CONCAT ('0' , `INDEX`)
ELSE `INDEX`
END)
,
(CASE WHEN SUB_INDEX <10
THEN CONCAT ('0' , `SUB_INDEX`)
ELSE SUB_INDEX
END)
)
) AS ID
FROM MY_TABLE
select CONCAT (
if(`index`<10,CONCAT ('0' , `INDEX`),`INDEX`),
if(`subindex`<10,CONCAT ('0' , `subindex`),`subindex`)) as ID from Table1
请在代码中添加更多解释,以便他人更容易理解您的解决方案。 – GameDroids 2014-10-10 10:09:50
......当'subindex'长到3个数字会发生什么? (如果你的答案是“添加另一个'0',那么......)如果你的数据库中使用了id,为什么不把它作为2列?如果它是用于_outside_你的数据库,你应该最有可能产生一个特定的(单个)id用于这个目的(或者可能的格式化连接不同,如果这是id值从第一位开始的地方,但是它们最有可能是** string **,并且应该已经被输入/存储因此) – 2014-10-10 10:41:21