1>select A.a,B.b
from (select now() as a) A,
from (select now() as b) B
在Oracle中这种格式是可以的  不清楚MySql是怎样规定的  
相关文档也查询了 也看到MySql类似用法  为什么我写的这个包“有语法错误”?
2>另外  我现在刚刚用MySql  现用的客户端是Shark Db  各位有什么好用的客户端推荐一下
3>还有  那位也是刚刚学MySql  有什么好的文档链接给个十分感谢

解决方案 »

  1.   

    1
    SELECT A.a,B.b
     FROM (SELECT NOW() AS a) A,(SELECT NOW() AS b) B2
    一般用MYSQL命令行,图形化管理工具SQLYOG
    3
    MYSQL自己的HELP
      

  2.   

    select A.a,B.b
     from (select now() as a) A,
     from (select now() as b) B   在SQL2005中也不能通过
      

  3.   

    没能通过啊  错误提示
    You have an error in your SQL syntax.  Check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT NOW() AS a) A,
      (SELECT NOW() AS b) B' at line 2
      

  4.   

    1>select A.a,B.b
    from (select now() as a) A,
    from (select now() as b) B
    在Oracle中这种格式是可以的 不清楚MySql是怎样规定的   
    相关文档也查询了 也看到MySql类似用法 为什么我写的这个包“有语法错误”?select A.a,B.b from (select now() as a)A,(select now() as b)B
    2>另外 我现在刚刚用MySql 现用的客户端是Shark Db 各位有什么好用的客户端推荐一下navicat  or 用命令行
    3>还有 那位也是刚刚学MySql 有什么好的文档链接给个
    如果已经会写sql  推荐‘MySQL性能调优与架构设计’写的很有条理
      

  5.   

    在5.5下测试没有问题
    mysql> SELECT A.a,B.b
        ->  FROM (SELECT NOW() AS a) A,(SELECT NOW() AS b) B;
    +---------------------+---------------------+
    | a                   | b                   |
    +---------------------+---------------------+
    | 2011-12-20 16:52:09 | 2011-12-20 16:52:09 |
    +---------------------+---------------------+
    1 row in set (0.00 sec)mysql>or
    mysql> SELECT A.a,B.b
        ->      FROM (SELECT NOW() AS a FROM DUAL ) A,(SELECT NOW() AS b FROM DUAL)
    B;
    +---------------------+---------------------+
    | a                   | b                   |
    +---------------------+---------------------+
    | 2011-12-20 16:53:41 | 2011-12-20 16:53:41 |
    +---------------------+---------------------+
    1 row in set (0.00 sec)mysql>
      

  6.   

    5.1下也可以
    SELECT A.a,B.b
     FROM (SELECT NOW() AS a) A,(SELECT NOW() AS b) B
      

  7.   

    我也有这样的问题、求解(MYSQL4.0)
      

  8.   

    如果是版本是4的话,没有办法,升级MYSQL
      

  9.   

    这个版本不支持子查询。无法实现。为什么不直接 select now() as a,now() as b;
      

  10.   


    学习的话,还是建议直接用MYSQL命令行工具。
    图形界面可以使用 
    一、MySQL Workbench
      MySQL Workbench是一个由MySQL开发的跨平台、可视化数据库工具。它作为DBDesigner4工程的替代应用程序而备受瞩目。MySQL Workbench可以作为windows、linux和OS X系统上的原始GUI工具,它有各种不同的版本,你可以查看下面的链接以获得它的版本信息。二、phpMyAdmin
      phpMyAdmin是一款免费的、用PHP编写的工具,用于在网络上管理MySQL,它支持MySQL的大部分功能。这款含有用户界面的软件能够支持一些最常用的操作(比如管理数据库、表格、字段、联系、索引、用户、许可,等等),同时还可以直接执行任何SQL语句。
      它所具备的特性:
      >直观的Web界面
      >支持大多数MySQL功能:
      > 浏览和丢弃数据库、表格、视图、字段和索引
      >创建、复制、删除、重命名以及更改数据库、表格、字段和索引
      >维护服务器、数据库以及表格,能对服务器的配置提出建议
      >执行、编辑和标注任何SQL语句,甚至批量查询
      >管理MySQL用户以及用户权限
      >管理存储的过程(stored procedures)和触发器(triggers)
      >从CSV 和 SQL文件格式中导入数据
      >能够以多种格式导出数据:CSV、SQL、XML、PDF、ISO/IEC 26300等
      >管理多台服务器
      >为数据库布局创建PDF图表
      >使用Query-by-example (QBE)创建复杂的查询
      >在数据库中进行全局搜索,或者在数据库的子集中进行搜索
      >用预定义的函数把存储的数据转化成任何格式
      >其他更多特性
      三、Aqua Data Studio
      对于数据库管理人员、软件开发人员以及业务分析师来说,Aqua Data Studio是一个完整的集成开发环境(IDE)。它主要具备了四个方面的功能:
      1)数据库查询和管理工具;
      2)一套数据库、源代码管理以及文件系统的比较工具;
      3)为Subversion(SVN)和CVS而设计了一个完整的集成源代码管理客户端;
      4)提供了一个的数据库建模工具(modeler),它和最好的独立数据库图表工具一样强大。
      四、SQLyog
      SQLyog是一个全面的MySQL数据库管理工具(/’GUI’/'Frontend’)。它的社区版(Community Edition)是具有GPL许可的免费开源软件。这款工具包含了开发人员在使用MySQL时所需的绝大部分功能:查询结果集合、查询分析器、服务器消息、表格数据、表格信息,以及查询历史,它们都以标签的形式显示在界面上,开发人员只要点击鼠标即可。此外,它还可以方便地创建视图和存储过程,最近几周笔者一直在反复使用这个功能。
      五、MYSQL Front
      这个MySQL数据库的图形GUI是一个“真正的”应用程序,它提供的用户界面比用PHP和HTML建立起来的系统更加精确。因为不会因为重载HTML网页而导致延时,所以它的响应是即时的。如果供应商允许的话,你可以让MySQL-Front直接与数据库进行工作。如果不行,你也只需要在发布网站上安装一个小的脚本即可。登录信息会存储在你的硬盘上,因此你不必再登录到不同的网络界面上了。
      

  11.   

    MySQL官方文档 http://dev.mysql.com/doc/refman/5.1/zh/index.html建议阅读其中的第三章。
      

  12.   

    我是要用到子查询,那个就是我举得个例子
    你的意思就是我不能实现我需求的功能了,我的业务逻辑不能通过其他的方式sql解决吗?
    MySql是我们服务器上的已经用了几年了  应该不会因为我的这个功能而变更  纠结求助
      

  13.   

    4不支持子查询
    将()中的SQL语句存为VIEW,再连接
      

  14.   

    4.0 也不支持VIEW。说明一下你想实现的功能。 或者考虑把MYSQL升级到最新版本.
      

  15.   

    我们数据库已经挺多年了  应该不会以为这一个需求做升级 我描述下我的业务逻辑吧:
    1我只从一张表中去数据
    2我是想取出满足不同条件下的某个字段的值
    3例如
    select t1.gname as "一级机构名称",
           t2.gname as "二级机构名称",
           t2.gid as gid
    from (select gname,gid from t_grp_org where levels = 0) t1,
         (select gname,supid,gid from t_grp_org where levels = 1) t2
    where t1.gid(+) = t2.supid
      

  16.   

       建议你列出你的表结构,并提供测试数据以及基于这些测试数据的所对应正确结果。
       参考一下这个贴子的提问方式http://topic.csdn.net/u/20091130/20/8343ee6a-417c-4c2d-9415-fa46604a00cf.html
       
       1. 你的 create table xxx .. 语句
       2. 你的 insert into xxx ... 语句
       3. 结果是什么样,(并给以简单的算法描述)
       4. 你用的数据库名称和版本(经常有人在MS SQL server版问 MySQL)
       
       这样想帮你的人可以直接搭建和你相同的环境,并在给出方案前进行测试,避免文字描述理解上的误差。   
      

  17.   

    可以使用Navicat for MySQL这个图形化工具
      

  18.   

    不升级,只有将T1、T2生成 表再查询CREATE TABLE T1 AS select gname,gid from t_grp_org where levels = 0
    CREATE TABLE T2 AS select gname,supid,gid from t_grp_org where levels = 1
      

  19.   

    我做的是报表数据集  必须的用sql实现
    以前的mysql 4.0的时候  子查询是通过什么实现的呢
      

  20.   

    不给出你的测试数据别人怎么帮你试呢? 建议参考  #22楼 的方法给出你的例子。 否则别人还要猜测着建表,INSERT数据。猜不对的话,则是浪费双方时间。
      

  21.   

    不好意思啊  大神
    我那个字段啊 数据量啊  是特别的多
    你看看能不能你给我举个最简单的例子  用join方式来实现  子查询
    4.0建表好像  也有什么特别的  没建成功字段name,ageselect t1.name as a,
           t2.name as b
    from (select name from test where age = 20)t1,
         (select name from test where age = 19)t1
      

  22.   

    select t1.name as a,
       t2.name as b
    from test t1,test t2
    where t1.age=20 and t2.age=19
      

  23.   

    你用到的test1 test2  是什么啊
    只有一张表!!!
      

  24.   


    仔细看看别人的回复哦,T1、T2只是别名,只有TEST表
      

  25.   

    你那个思路   可以满足需求
    但是mysql 4.0中还是报错:
    The SELECT would examine more rows than MAX_JOIN_SIZE. 
    Check your WHERE and use SET SQL_BIG_SELECTS=1 
    or SET SQL_MAX_JOIN_SIZE=# if the SELECT is ok
      

  26.   

    设置
    SET SQL_BIG_SELECTS=1 
    OR
    增大
    tmp_table_size的值
      

  27.   

    mysql> select A.a,B.b
        -> from (select now() as a) A,
        -> (select now() as b) B;
    +---------------------+---------------------+
    | a                   | b                   |
    +---------------------+---------------------+
    | 2011-12-22 13:42:12 | 2011-12-22 13:42:12 |
    +---------------------+---------------------+
    1 row in set (0.00 sec)
      

  28.   

    我刚刚查了  你说的那两种方式  都是说设置他们  但是没找到他们是做什么用的
    由于我们服务器上的mysql数据量很大  我不太明白的内容 不敢随便操作  求解释
    另外那个sql在mysql其他版本能运行吗   oracle是可以的啊  那个sql报错原因是什么呢