4

MySQL は共通テーブル式をサポートしていますか? たとえば、OracleにはWITH句がありますか?:

WITH aliasname
AS
  ( SELECT COUNT(*) FROM table_name )
SELECT COUNT(*) FROM dept,aliasname
4

4 に答える 4

2
SELECT t.name,
       t.num
  FROM TABLE t
  JOIN (SELECT c.id,COUNT(*) 'num1'
          FROM TABLE1 c
         WHERE c.column = 'a'
      GROUP BY c.id) ta1 ON ta1.id = t.id
 JOIN (SELECT d.id,COUNT(*) 'num2'
          FROM TABLE2 d
         WHERE d.column = 'a'
      GROUP BY d.id) ta2 ON ta2.id = t.id
于 2013-02-07T10:01:31.977 に答える
1

1 つの方法は、サブクエリを使用することです。

  SELECT COUNT(*) 
  FROM dept,
  ( 
      SELECT COUNT(*) 
      FROM table_name
  ) AS aliasname

,2 つのテーブルの間は、投稿したクエリと同じように 2 つのテーブルをクロス結合することに注意してください。それらの間に何らかの関係がある場合はJOIN、代わりにそれらを使用できます。

于 2013-02-07T09:56:41.270 に答える