我正在使用PostgreSQL 9.6,我有一个名为"ItemDbModel"的表,其中有两列如下:
No integer,
Content jsonb
Run Code Online (Sandbox Code Playgroud)
说我把很多记录像:
"No": 2, {"obj":"x","Item": {"Name": "BigDog", "Model": "NamedHusky", "Spec":"red dog"}}
"No": 4, {"obj":"x","Item": {"Name": "MidDog", "Model": "NamedPeppy", "Spec":"no hair"}}
"No": 5, {"obj":"x","Item": {"Name": "BigCat", "Model": "TomCat", "Spec":"blue color"}}
Run Code Online (Sandbox Code Playgroud)
如何查询表格:
并按"Content.Item.Name.length"排序?
谢谢!
我正在用 C# 开发一个与 Windows 剪贴板相关的应用程序。由于Dot Net Clipboard库有很多缺点(STA、无法打开剪贴板等),我决定直接使用系统API。
我想要做的是备份每种格式的数据(尽可能多,如果不是全部),将它们推入堆栈,然后再次弹出到剪贴板。如果您尝试过 AutoHotKey,这就是其中的“ ClipboardAll ”所做的。
当我尝试获取数据时出现问题,这是我为 Pinvoke 编写的方式:
[DllImport("user32.dll", SetLastError = true)]
public static extern bool OpenClipboard(IntPtr hWndNewOwner);
[DllImport("user32.dll", SetLastError = true)]
public static extern bool CloseClipboard();
[DllImport("user32.dll")]
public static extern IntPtr GetClipboardData(uint uFormat);
[DllImport("user32.dll", SetLastError = true)]
public static extern uint EnumClipboardFormats(uint format);
[DllImport("kernel32.dll", SetLastError = true)]
public static extern IntPtr GlobalLock(IntPtr hMem);
[DllImport("kernel32.dll")]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool GlobalUnlock(IntPtr hMem);
[DllImport("kernel32.dll")]
public static extern UIntPtr GlobalSize(IntPtr hMem);
Run Code Online (Sandbox Code Playgroud)
这就是我使用它们的方式:
var x = …Run Code Online (Sandbox Code Playgroud)