利用Java理解sql的语法(实例讲解)

作者:java部落 时间:2023-02-16 06:18:06 

select 相当于 for 循环


select id from IDArray

LinkedList a = new LinkedList();
for ( int i=0 ; i<tableA.length ; i++){
 a.add(IDArray.get("id" ) );
}

return a;

当执行子查询时,可以理解为


select id, ( select name from nameArray) as names ,from Idarray

LinkedList a = new LinkedList();
for ( int i=0 ; i<tableA.length ; i++){
 a.add(IDArray.get("id" ) );
 for(int j=0 ; j<nameArray.length ; j++){
   a.add(namesArray.get("name"));
 }
}

很明显这里一对多了。所以执行不对。报SQL错误

所以在 select中,应该要具体确定某一个值


select id, ( select name from nameArray where nameId=id) as names from Idarray

LinkedList a = new LinkedList();
for ( int i=0 ; i<tableA.length ; i++){
 Object object = IDArray.get("id" ) ;
for ( int j=0 ; j<nameArray.length ; i++){
  if ( nameArray.get("nameId")==object){
   Object object2 = nameArray.get("nameId");
   a.add(object2);
 }
}
   a.add(object);
}

当且仅当if 条件的值搜索是单个值的时候,是对应上的

那么groupBy呢?


select id, ( select name from nameArray where nameId=id) as names from Idarray group by id

LinkedList a = new LinkedList();
for ( int i=0 ; i<tableA.length ; i++){
 Object object = IDArray.get("id" ) ;
for ( int j=0 ; j<nameArray.length ; i++){
  if ( nameArray.get("nameId")==object){
   Object object2 = nameArray.get("nameId");
   a.add(object2);
 }
}
   a.add(object);
}

LinkedList groupByArray = new LinkedList();

for ( int i=0 ; i< a. length ; i++){
  int id = a[i].getId();
  LinkedList tempArray = new LinkedList();
  for ( int j=0 ; j<j.length ; j++){
   int temp = a[j].getId();
  if ( id==temp){
    tempArray.add(temp);
   }
 }
 groupByArray.add(tempArray);
}

来源:http://www.cnblogs.com/wl2014/p/7865796.html

标签:sql,语法,Java
0
投稿

猜你喜欢

  • android实现筛选菜单效果

    2022-10-22 12:41:05
  • 一文带你深入了解Java泛型

    2022-02-10 05:38:02
  • 利用java监听器实现在线人数统计

    2022-06-27 07:15:57
  • java 使用异常的好处总结

    2023-11-29 13:35:49
  • Java实现世界上最快的排序算法Timsort的示例代码

    2021-12-14 17:57:27
  • C++ 二维(多维)vector添加一个空项问题

    2022-10-10 14:44:23
  • 详解java中jvm虚拟机栈的作用

    2022-06-06 14:08:44
  • Java引用传递和值传递栈内存与堆内存的指向操作

    2021-05-30 04:43:37
  • 探讨:将两个链表非降序合并为一个链表并依然有序的实现方法

    2023-06-23 01:41:38
  • Java抽象类、继承及多态和适配器的实现代码

    2021-07-14 05:38:00
  • Eclipse中安装反编译工具Fernflower的方法(Enhanced Class Decompiler)

    2021-09-12 09:01:13
  • springcloud整合openfeign使用实例详解

    2022-10-05 08:51:52
  • 使用java的Calendar对象获得当前日期

    2023-10-11 16:24:23
  • Java内存模型与JVM运行时数据区的区别详解

    2023-11-24 13:29:08
  • 关于ConditionalOnMissingBean失效问题的追踪

    2021-08-19 17:42:04
  • springboot中使用Feign整合nacos,gateway进行微服务之间的调用方法

    2021-07-12 07:00:28
  • Java通过反射将 Excel 解析成对象集合实例

    2023-05-22 18:49:02
  • C语言实现简单弹跳小球

    2022-07-03 12:54:34
  • Java BigDecimal案例详解

    2021-09-15 12:03:43
  • Java中关于MouseWheelListener的鼠标滚轮事件详解

    2023-10-19 02:02:54
  • asp之家 软件编程 m.aspxhome.com