小编Ara*_*ind的帖子

自引用表 SQL 查询

我有四列的表格 id, name, designation, manager_id.

表架构:

CREATE TABLE "Employee_Information" 
(
    "id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, 
    "name" varchar, 
    "designation" varchar, 
    "manager_id" integer references employee_information(id)
);
Run Code Online (Sandbox Code Playgroud)

如下

ID  Name    Designation   Manager_id
-------------------------------------
1   Raja    CEO 
2   Mani    CTO           1
3   Kavi    COO           1
4   Murugan Head          3
5   Alpha   Head(Fin)     4
7   Kannan  Head          4
Run Code Online (Sandbox Code Playgroud)

员工层级如下:

Raja CEO
    Mani CTO
    Kavi COO
               Murugan Head
                       Alpha Head(Fin)
                           Kannan Head 
       Beta CFO
       Delta Head 
Run Code Online (Sandbox Code Playgroud)

我想要一个 SQL 查询来显示特定员工的所有可能的经理。他的 Juniors 或其他下级员工姓名不应出现在结果集中。

显示同级别或更高级别的所有其他员工。

我无法为此找到解决方案。

sql database sqlite join self-referencing-table

2
推荐指数
1
解决办法
1万
查看次数

Haskell函数到Clojure函数的转换

试图将Haskell函数转换为Clojure。但是面临困难。不知道发生了什么。

这是递归的Haskell函数。

  mapWidth :: [[Char]] -> Int
  mapWidth [] = 0
  mapWidth (x:xs)
  | length xs == 0 = length x
  | length x /= length (xs!!0) = -1
  | otherwise = mapWidth(xs)
Run Code Online (Sandbox Code Playgroud)

到目前为止,这是我尝试过的:

(defn mapWidth [data_list]
    (def data 0)
    ([[x & xs](seq data_list)](if (= (count x) 0) 
    (data 0)
    (data -1))))
    ([[x & xs](seq data_list)](if not(= (count xs) length (xs!!0))
    (data 0)
    (data -1)
    mapWidth(xs)))
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏。我对这两种语言都是新手。

haskell clojure code-translation

0
推荐指数
1
解决办法
121
查看次数