是否可以在mySQL中生成一个包含自动递增索引的字符串?创建一个从索引派生的mySQL字符串
的记录看起来像:
Index | generatedField
-----------------------
1 | random_Number_1
2 | random_Number_2
我可以用它在 “插入” COMAND?像这样:
INSERT INTO CrB (generatedField) VALUES ( CONCAT(rand(),`Index`));
是否可以在mySQL中生成一个包含自动递增索引的字符串?创建一个从索引派生的mySQL字符串
的记录看起来像:
Index | generatedField
-----------------------
1 | random_Number_1
2 | random_Number_2
我可以用它在 “插入” COMAND?像这样:
INSERT INTO CrB (generatedField) VALUES ( CONCAT(rand(),`Index`));
你可以不知道AUTO_INCREMENT索引您插入行之前。但是你可以用两条语句来做:
INSERT INTO CurB (generatedField) VALUES ('');
UPDATE CurB
SET generatedField = CONCAT(RAND(), '_', LAST_INSERT_ID())
WHERE `Index` = LAST_INSERT_ID();
这样的事情?
SELECT
`Index`,
CONCAT('random_number_',`Index`) AS generatedField
FROM your_table;
编辑:
为了在一个表中插入随机文本:
CREATE TABLE curB(
randomNumberText VARCHAR(50)
);
INSERT INTO curB(randomNumberText) VALUES(CONCAT('random_number_',RAND()));
我可以在“插入”命令中使用它吗?像这样: INSERT INTO CurB(generatedField)VALUES(RAND()+ Index); – user3495363
'curB'表的结构是什么?它是否已经创建? – 1000111
是的,它有“索引”列自动增加,它有“generatedField”culum。我想在创建记录时立即在“generatedField”中指定一个值(并且我希望这个记录是从记录创建时生成的索引的值中组合出来的,以及一个随机数) – user3495363
select concat('random_number_', index) as generated_field from my_table;
和
insert into your_insert_table value(your_column)
select concat('random_number_', index) as generated_field from my_table;
我可以在“插入”命令中使用它吗?像这样: INSERT INTO CurB(generatedField)VALUES(RAND()+ Index); – user3495363
我已经更新了插入 – scaisEdge
的答案,所以这实际上意味着来自我的PHP的两个不同的sql调用? (或者你的意思是我可以以某种方式在一个SQL字符串中做它?) – user3495363
这是你的设置问题。您可以在一个查询中传递两个SQL语句。 –