Mysql 是否按(1 2 10 5 5)中的顺序删除?
以下查询有效,但MySQL会对结果集进行排序:Mysql 是否按(1 2 10 5 5)中的顺序删除?,mysql,sql-order-by,remove-if,Mysql,Sql Order By,Remove If,以下查询有效,但MySQL会对结果集进行排序: SELECT STRINGTEXT FROM WEBSTRINGS WHERE GUI=0 AND LANGID='GB' AND TOKENID IN (312,47,48,49,50,51,52,53,54,55,56,57,58,60,61,62, 63,87,88,89,90,208,210,249,309,310,311); 这意味着当我在我的记录集中获取这个时,tokenid312的数据是 最后而不是第一个(如) 我希望我的结果集按以
SELECT STRINGTEXT FROM WEBSTRINGS WHERE GUI=0 AND LANGID='GB' AND TOKENID IN
(312,47,48,49,50,51,52,53,54,55,56,57,58,60,61,62, 63,87,88,89,90,208,210,249,309,310,311);
这意味着当我在我的记录集中获取这个时,tokenid312
的数据是
最后而不是第一个(如)
我希望我的结果集按以下请求顺序返回:
312,47,48,49,50,51,52,53,54,55,56,57,58,60,61,62,6 3,87,88,89,90,208,210,249,309,310,311
但事实证明:
47,48,49,50,51,52,53,54,55,56,57,58,60,61,62,63,87 ,88,89,90,208,210,249,309,310,311,312
是否有任何方法可以让MySQL不为此查询执行此操作?我真的需要
让他们恢复原状。尝试使用'`
字段
文档:也许你应该做一个选择STRINGTEXT,TOKENID….
,然后你的结果中会有TOKENID
和STRINGTEXT
映射。问题是什么?你能在问题中添加新代码和错误/输出吗。它应该给出正确的结果。似乎输入到字段
函数中有输入错误<代码>…61,62,6 3,87,应该是…61,62,63,87,
。删除其中的空间。
SELECT STRINGTEXT
FROM WEBSTRINGS
WHERE GUI=0 AND LANGID='GB' AND TOKENID IN (312,47,48,49,50,51,52,53,54,55,56,57,58,60,61,62, 63,87,88,89,90,208,210,249,309,310,311)
ORDER BY FIELD (TOKENID,312,47,48,49,50,51,52,53,54,55,56,57,58,60,61,62,6 3,87,88,89,90,208,210,249,309,310,311)
SELECT STRINGTEXT
FROM WEBSTRINGS
WHERE GUI=0
AND LANGID='GB'
AND TOKENID IN (312,47,48,49,50,51,52,53,54,55,56,57,58,60,61,62,63,87,88,89,90,208,210,249,309,310,311);
ORDER BY FIELD(TOKENID,312,47,48,49,50,51,52,53,54,55,56,57,58,60,61,62,63,87,88,89,90,208,210,249,309,310,311);