簡體   English   中英

SQL - 使用的select語句具有不同數量的列

[英]SQL - The used select statement have a different number of colums

我正在嘗試創建我的第一個函數,它創建沒有任何錯誤,但是,當我嘗試使用它時,它給了我錯誤。

這是功能 -

    CREATE FUNCTION isie_kontakti (condition CHAR(3)) 
    RETURNS CHAR(100) 
    BEGIN 
    DECLARE returnthis CHAR(100); 
    SELECT DISTINCT Person.name, Person.lastName, Contacts.mobile, Contacts.email 
    FROM Person JOIN Contacts on Contacts.Person_ID = Person.ID 
    JOIN ParentChild on ParentChild.parentID = Person.ID 
    JOIN ChildGroup ON ChildGroup.Person_ID = ParentChild.childID 
    WHERE ChildGroup.Group_ID = 'condition' INTO returnthis; 
    RETURN returnthis; 
    END//

表模式 - http://www.imagesup.net/dm-713886347846.png

您創建函數以返回char(100)類型的單個列,但returnthis項包含相當多的列。

您需要匹配您的查詢和返回類型。

你如何做到這一點取決於你想要達到的目標。 它可能就像將select的列連接成一個變量一樣簡單,這是一種類似的行(未經測試,因為我目前沒有DBMS可用):

SELECT Person.name     | ' '
     | Person.lastName | ' '
     | Contacts.mobile | ' '
     | Contacts.email
  FROM ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM