Mysql नहीं बल्कि Postgres में वक्तव्य काम करता है

वोट
0

यह मूल रूप से एक अद्वितीय पहचानकर्ता हम अपने सिस्टम में उपयोग करने में एक संख्यात्मक मान बदल देता है। इससे हमारे डाटाबेस में ठीक काम करता है, लेकिन जब Postres पर चल रहा यह काम नहीं कर रहा है और मैं काफी यकीन है कि क्यों नहीं कर रहा हूँ

CONCAT( 
  (240000000000 + AA.id),   
 (SUBSTRING((10 - ((((SUBSTRING((240000000000 + AA.id) FROM 2 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 4 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 6 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 8 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 10 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 12 FOR 1))*3) + (SUBSTRING((240000000000 + AA.id) FROM 1 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 3 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 5 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 7 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 9 FOR 1) + SUBSTRING((240000000000 + AA.id) FROM 11 FOR 1))) MOD 10)) FROM -1 FOR 1)) 
  ) AS 'BI_1_240_SKU'

यह त्रुटि मैं Postgres में हो रही है

SET
psql:C:/Users/kevin.jeung/Desktop/sql/test2:103: ERROR:  syntax error at or near MOD
LINE 5: ...SUBSTRING((240000000000 + AA.id) FROM 11 FOR 1))) MOD 10)) F...

मुझे यकीन है कि यह कोई है जो जानता है के लिए एक आसान वाक्य रचना परिवर्तन है कर रहा हूँ

03/02/2016 को 18:00
उपयोगकर्ता
अन्य भाषाओं में...                            


1 जवाब

वोट
2

आपका त्रुटि काफी जानकारीपूर्ण है। PostgreSQL को नहीं पहचानता है MODसमारोह।

अपने आप को देखो चाहते हैं, तो प्रलेखन , करने के लिए MOD, आप का उपयोग करने के %संकेत।

╔══════════╦═══════════════════════════════════════════════╦═══════════╦════════╗
║ Operator ║                  Description                  ║  Example  ║ Result ║
╠══════════╬═══════════════════════════════════════════════╬═══════════╬════════╣
║ +        ║ addition                                      ║ 2 + 3     ║      5 ║
║ -        ║ subtraction                                   ║ 2 - 3     ║     -1 ║
║ *        ║ multiplication                                ║ 2 * 3     ║      6 ║
║ /        ║ division (integer division truncates results) ║ 4 / 2     ║      2 ║
║ %        ║ modulo (remainder)                            ║ 5 % 4     ║      1 ║
║ ^        ║ exponentiation                                ║ 2.0 ^ 3.0 ║      8 ║
║ |/       ║ square root                                   ║ |/ 25.0   ║      5 ║
║ ||/      ║ cube root                                     ║ ||/ 27.0  ║      3 ║
║ !        ║ factorial                                     ║ 5 !       ║    120 ║
║ !!       ║ factorial (prefix operator)                   ║ !! 5      ║    120 ║
║ @        ║ absolute value                                ║ @ -5.0    ║      5 ║
║ &        ║ bitwise AND                                   ║ 91 & 15   ║     11 ║
║ |        ║ bitwise OR                                    ║ 32 | 3    ║     35 ║
║ #        ║ bitwise XOR                                   ║ 17 # 5    ║     20 ║
║ ~        ║ bitwise NOT                                   ║ ~1        ║     -2 ║
║ <<       ║ bitwise shift left                            ║ 1 << 4    ║     16 ║
║ >>       ║ bitwise shift right                           ║ 8 >> 2    ║      2 ║
╚══════════╩═══════════════════════════════════════════════╩═══════════╩════════╝
03/02/2016 को 18:05
का स्रोत उपयोगकर्ता

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more