2015-12-13 70 views
0

我需要一些幫助來了解一個SQL語句:這個SQL是什麼意思?

select customerID as customerid, RAND() as random 
from customer tablesample system(10) 
fetch first row only with ur 

它只是沒有道理給我。誰能告訴我它的實際含義? 它甚至是一個正確的SQL?

一些其他問題:

  1. 是 「爲客戶ID」 有必要嗎?

  2. 「隨機」是否必要?

  3. 「tablesample system(10)」是什麼意思?

  4. 「與你」的含義是什麼?

  5. 有必要讓蘭德()和tablesample系統(10)和你們所有在一起?

感謝您的幫助

回答

2

的「爲客戶ID」和「隨機」只是標籤的結果集,所以他們沒有必要(如果你不包括他們,標籤會是列名,即CustomerID和RAND()) RAND()取0〜1,並用從結果的ID相關聯的其之間的隨機數 取第一行會選擇第一行爲查詢

TABLESAMPLE系統(10):根據您提供的數量,它只從表中選擇一部分(10表示10%) :你可以用UR指「未提交的讀出」在這裏讀到它https://wiki.postgresql.org/wiki/TABLESAMPLE_Implementation

,你可以瞭解在這裏 http://www.anesi.com/v41004.htm

什麼查詢會做的是從表中的隨機10%選擇在客戶和將它們中的每一個與0到1之間的一個隨機數相關聯,然後取這些選擇的customerID的第一個和它們各自的隨機數,並將其返回到標籤爲「customerid」和「random」的表格中。

希望這回答你的問題。

+0

謝謝,這對我們有很大的幫助。我也會閱讀這些鏈接。 – user2939293

+1

歡迎您! –