在具有多个列的Derby数据库中的视图上使用强制转换

时间:2013-05-19 19:13:51

标签: sql derby

这个问题很快。我知道你可以说SELECT CAST(someColumn AS otherType) FROM myView之类的东西,其中myView是Derby数据库中的一个视图,但它是否可以与SELECT语句中的其他语句组合?换句话说,我可以说SELECT columnA, CAST(columnB AS otherType), someOtherColumns FROM myView之类的东西,还是你必须投出你的整个查询? //我一直在网上寻找可能有帮助的东西,但没有这方面的例子。我甚至在w3schools.com上试过这个,但它抱怨数据库是只读的(不知怎的,cast()正在改变数据库!)。否则,我没有发现有人做过类似我在这里问的事情的实例。

2 个答案:

答案 0 :(得分:1)

我找到了这个问题的答案:是的,你可以说出我在德比上面所说过的话。这是一个例子:http://www.ibm.com/developerworks/library/os-ad-trifecta6/ //虽然我仍然无法在w3schools.com上的数据库中使用这些方法!

你不必投下整个吓人的桌子;你可以一次只投一列!哎呀,在德比,你可以说DOUBLE(23),它会返回23.000000之类的东西!

答案 1 :(得分:1)

我不知道Derbyw3schools.com的含义,但您需要了解 CAST 是一个函数,并且所有函数都具有特定于任何函数的语法您所处的环境。许多函数遵循ANSI标准语法,但许多其他函数不遵循,尤其是在数据库语言中。使用“在整个查询上”的函数是没有意义的。

Here is a link DOUBLE 函数的Derby版本10.10文档,这是一个创建浮点值的函数(这就是为什么你看到它显示为“23.000000”)。当您到达该页面时,向下滚动到标有“内置功能”一节中描述的功能。您还会看到 CAST 功能的文档。

请注意,尽管我在今天之前从未听说过Derby,但是如果有需要,我可以轻松访问这样的文档。

换句话说,请始终查阅您正在使用的数据库的正确版本的文档!