`
wostyh
  • 浏览: 76429 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Select Where In 的排序

阅读更多
select * from a where id in (3,1,2)
要求结果按IN中提供的顺序进行排序,SQL语句如下:

SELECT * FROM a WHERE id IN(3,1,2) 
ORDER BY CharIndex(','+convert(varchar,id)+',', ',3,1,2,')
 
以上语句适用于 Sql Server.
分享到:
评论

相关推荐

    laravel 模型查询按照whereIn排序的示例

    //查询结果是想按照wherein的顺序排序 //正确写法 $data = Content::whereIn('id',$ids) ->select('id') // ->orderBy(\DB::raw('FIND_IN_SET(id, ' . implode(,, $ids) . '' . ))) // ->orderBy(DB::raw(FIND_IN_...

    关于Select Where In 的排序问题

    总的来说,处理`SELECT WHERE IN`的排序问题需要对SQL的字符串函数有深入的理解,并且要根据不同的数据库系统选择适当的函数。在设计查询时,应该权衡性能和代码的简洁性,根据实际需求选择最佳方案。

    SELECT IN SQL

    SELECT * FROM table1 WHERE column1 IN (SELECT column1 FROM table2); ``` 13. **联接(JOIN)操作** `JOIN`语句用于合并两个或更多表的数据: - `INNER JOIN`:返回两个表中匹配的行。 - `LEFT JOIN`(或`...

    mysql in 排序

    SELECT * FROM table WHERE id IN (3, 6, 9, 1, 2, 5, 8, 7) ORDER BY FIELD(id, 3, 6, 9, 1, 2, 5, 8, 7); ``` 这里的关键在于`ORDER BY FIELD(id, 3, 6, 9, 1, 2, 5, 8, 7)`部分。`FIELD()`函数可以用来指定特定...

    按in查询排序

    SELECT id FROM tb_order WHERE id IN (40, 27, 19, 37) ORDER BY INSTR('40,27,19,37', id) ``` #### 3. 代码详解 - **查询条件**:`WHERE id IN (40, 27, 19, 37)`。这里使用`IN`关键字来筛选出ID为40、27、19或...

    mysql通过find_in_set()函数实现where in()顺序排序

    SELECT * FROM table WHERE id IN ('783', '769', '814', '1577', '1769'); ``` 为了实现排序,我们需要结合`ORDER BY`子句和`FIND_IN_SET()`函数: ```sql SELECT * FROM table WHERE id IN ('783', '769', '814...

    Oracle各种select查询语法

    select * from emp where job in ('CLERK','MANAGER'); 该查询语句将查询emp表中job字段等于CLERK或MANAGER的所有记录。 6、排序 select * from emp order by hiredate desc; 该查询语句将查询emp表中所有记录...

    SQL Select 语句大全

    示例:`SELECT Sno, Sname FROM Student WHERE Sno IN (SELECT Sno FROM SC WHERE Cno=3);` 通过这个实验报告,我们掌握了 SQL Select 语句的基本用法和各种实例,包括 WHERE 子句、IN 和 NOT IN 的使用、BETWEEN ...

    数据库原理与应用 实验 select语句

    WHERE X.Sno = (SELECT Sno FROM S WHERE Sn = '') AND Y.Sno > X.Sno AND Y.age ``` 此查询用于找出所有年龄小于某同学、学号又比该同学大的同学的学号。 - **查询以开头的学生信息**: ```sql SELECT Sn, ...

    select练习

    select * from emp where hiredate in (select (last_day(hiredate)-1) from emp); select * from emp where (sysdate - hiredate)/365 >= 10; ``` 分别找出每月倒数第二天入职的员工和工龄大于等于 10 年的员工...

    Mysql select in 按id排序实现方法

    SELECT * FROM test WHERE id IN (3,1,5) ORDER BY SUBSTRING_INDEX('3,1,5', ',', FIND_IN_SET(id, '3,1,5')); ``` 这里的`FIND_IN_SET`函数用于获取ID在列表中的位置,然后`SUBSTRING_INDEX`根据这个位置提取...

    数据库实验2的实验报告1. 在 studentsdb 数据库中使用 SELECT 语句进行基本查询。 (1)在 student

    WHERE student_id IN (SELECT student_id FROM grade WHERE course_id IN ('0002', '0005')); ``` - 使用`ANY`子查询查找学号为0001的学生分数高于0002号学生最低分数的课程编号和分数: ```sql SELECT course_...

    基本select 语句总结

    SELECT * FROM emp WHERE empno IN (7521,7900,7876); ``` 该语句将从 `emp` 表中检索 empno 在 (7521,7900,7876) 集合中的员工信息。 LIKE 使用 `LIKE` 运算符可以进行模糊查询。例如: ```sql SELECT * FROM emp...

    sql查询和排序

    SELECT * FROM Employees WHERE Salary > 5000; ``` 这里,`SELECT *`表示选择所有列,`FROM Employees`指定表名,`WHERE Salary > 5000`则是我们的条件,筛选出薪水大于5000的记录。 条件查询还可以结合多种操作...

    SQL Server SELECT

    WHERE 课程号 IN ('a2001', 'j003'); ``` - **LIKE 关键字**:查询姓“张”的学生学号和姓名。 ```sql SELECT 学号, 姓名 FROM xs WHERE 姓名 LIKE '张%'; ``` - **IS 关键字**:查询选修了课程但没有...

    第2章 限制数据和对数据排序

    SELECT employee_id, last_name, salary, department_id FROM employees WHERE department_id IN (10, 90, 110); ``` - 使用`LIKE`查询名字以"S"开头的员工信息。 ```sql SELECT employee_id, last_name, ...

    oracle限定查询和排序

    SELECT * FROM emp WHERE ename IN ('ALLEN', 'WARD'); ``` ##### 6. IS NULL与IS NOT NULL - **示例**:查询所有没有奖金的员工。 ```sql SELECT * FROM emp WHERE comm IS NULL; ``` ##### 7. 复合条件查询...

Global site tag (gtag.js) - Google Analytics